Java 204

자바 연습문제 - 람다식과 함수형 인터페이스로 과목별 평균 점수 계산

📖 문제다음은 학생의 영어 평균 점수와 수학 평균 점수를 계산하는 코드입니다.avg() 메소드를 작성하여 각 과목의 평균을 구해보세요.※ 함수형 인터페이스 Function를 활용해야 합니다.📦 예제 클래스Function.javapublic interface Function { public double apply(T t);}Student.javapublic class Student { private String name; private int englishScore, mathScore; public Student(String name, int englishScore, int mathScore) { this.name = name; this.englishScore = englishScore; thi..

Java/연습문제 2025.05.22

자바 연습문제 - 람다식을 활용한 최대값과 최소값 계산

📖 문제다음은 배열 항목 중에서 최대값 또는 최소값을 찾는 코드입니다.maxOrMin() 메소드를 호출할 때 빈 곳에 들어갈 람다식을 작성해보세요.📦 예제 클래스Operator.javapublic interface Operator { public int apply(int x, int y);}Example.javapublic class Example { private static int[] scores = { 10, 50, 3 }; public static int maxOrMin(Operator operator) { int result = scores[0]; for (int score : scores) result = operator.apply(result, score); return resu..

Java/연습문제 2025.05.22

자바 연습문제 - 사용자 정의 함수형 인터페이스 Function 구현

📖 문제다음 코드를 보고, Function 함수형 인터페이스를 직접 정의해보세요.람다식으로 두 실수 값을 받아 계산하는 구조를 구현합니다.📦 예제 클래스Example.javapublic class Example { public static double calc(Function fun) { double x = 10; double y = 4; return fun.apply(x, y); } public static void main(String[] args) { double result = calc((x, y) -> (x / y)); System.out.println("result : " + result); }}📌 예제 정답 (Function.java)public interface Functio..

Java/연습문제 2025.05.22

자바 연습문제 - 람다식을 이용한 Thread 실행 코드 작성

📖 문제다음 코드의 실행 결과를 보고 빈 곳에 들어갈 람다식을 작성해보세요.Runnable을 람다식으로 구현하여 Thread 객체를 실행합니다.📦 예제 클래스Example.javapublic class Example { public static void main(String[] args) { Thread thread = new Thread( // 빈 공간 ); thread.start(); }}📌 예제 정답public class Example { public static void main(String[] args) { Thread thread = new Thread(() -> { for (int i = 0; i 💻 실행 결과작업 스레드가 실행됩니다.작업 스레드가 실행됩니다.작업 ..

Java/연습문제 2025.05.22

자바 연습문제 - Comparator를 이용한 TreeSet 정렬 기준 지정

📖 문제TreeSet에 Student 객체를 저장할 때, score 필드값을 기준으로 자동 정렬되도록 하고 싶습니다.이번에는 Student 클래스에서 Comparable을 구현하지 않고,외부에서 Comparator를 이용해 정렬 기준을 제공하는 방식으로 구현해보세요.📦 예제 클래스Student.javapublic class Student { public String id; public int score; public Student (String id, int score) { this.id = id; this.score = score; }}TreeSetExample.javaimport java.util.TreeSet;import java.util.Comparator;public class TreeS..

Java/연습문제 2025.05.22

자바 연습문제 - TreeSet과 Comparable을 이용한 자동 정렬 구현

📖 문제TreeSet에 Student 객체를 저장할 때, score 필드값을 기준으로 자동 정렬되도록 구현하고 싶습니다.TreeSet의 last() 메소드를 호출했을 때 가장 높은 점수의 Student 객체가 리턴되도록 Student 클래스의밑줄 친 부분과 빈 공간에 알맞은 코드를 작성해보세요.📦 예제 클래스Student.javapublic class Student /*밑줄 쳐진 곳*/ { public String id; public int score; public Student (String id, int score) { this.id = id; this.score = score; } // 빈공간}TreeSetExample.javaimport java.util.TreeSet;public cla..

Java/연습문제 2025.05.22

160. 생성자 참조(Constructor Reference) – new 키워드도 메서드 참조처럼 사용하기

자바의 메서드 참조 기능은 생성자도 참조할 수 있습니다.람다식에서 new 키워드를 통해 객체를 생성하는 표현이 자주 쓰일 때,이를 클래스명::new 형태로 간결하게 표현할 수 있습니다.이번 예제에서는 두 개의 생성자를 가진 Member 클래스를 람다식 없이 생성자 참조로 구현해봅니다.📦 Creatable.javapackage ch16.sec05;public class Creatable { public interface Creatable1 { public Member create(String id); } public interface Creatable2 { public Member create(String id, String name); }}📦 Member.javapackage ch16.sec05;..

Java/자바 정리 2025.05.22

159. 메서드 참조 – 문자열 비교에 활용하기

이번에는 람다식 대신 문자열 비교 메서드인 String::compareToIgnoreCase 를메서드 참조 방식으로 함수형 인터페이스에 전달하는 방법을 실습해보겠습니다.메서드 참조는 코드 가독성을 높이고, 중복되는 람다식을 간결하게 표현할 수 있는 좋은 방법입니다.📦 Comparble.javapackage ch16.sec05;public interface Comparble { int compare(String a, String b);}📦 Person.javapackage ch16.sec05;public class Person { public void ordering(Comparble comparble) { String a = "홍길동"; String b = "김길동"; int result = c..

Java/자바 정리 2025.05.22

자바 연습문제 - HashMap을 이용한 점수 평균 및 최고 점수 계산

📖 문제HashMap에 아이디(String)와 점수(Integer)가 저장되어 있습니다.실행 결과와 같이 평균 점수, 최고 점수, 최고 점수를 받은 아이디를 출력하도록 코드를 작성해보세요.📦 예제 클래스MapExample.javaimport java.util.HashMap;import java.util.Map;public class MapExample { public static void main(String[] args) { Map map = new HashMap(); map.put("blue", 96); map.put("red", 86); map.put("white", 92); String name = null; int maxScore = 0; int totalScore = 0; ..

Java/연습문제 2025.05.22

158. 메서드 참조(Method Reference) – 람다식을 간결하게 대체하기

람다식은 코드 블록을 간결하게 전달하는 기능이지만,이미 존재하는 메서드를 대신 호출만 할 경우, :: 문법을 활용한 메서드 참조(Method Reference) 를 사용할 수 있습니다.이번 예제에서는 정적 메서드와 인스턴스 메서드를 참조하여람다식 대신 사용하는 방법을 알아보겠습니다.📦 Calcuable.javapackage ch16.sec05;public interface Calcuable { double calc(double x, double y);}📦 Person.javapackage ch16.sec05;public class Person { public void action(Calcuable calcuable) { double result = calcuable.calc(10, 4); Syst..

Java/자바 정리 2025.05.22
반응형