SeouliteLab

[Java/자바] HashSet 최대값, 최소값 찾기, 3가지 방법 본문

프로그래밍

[Java/자바] HashSet 최대값, 최소값 찾기, 3가지 방법

Seoulite Lab 2024. 3. 8. 09:06

예제 1: 반복문을 사용하여 최대값 및 최소값 찾기

HashSet<Integer> numbers = new HashSet<>();
numbers.add(10);
numbers.add(30);
numbers.add(20);
numbers.add(50);
numbers.add(40);

int max = Integer.MIN_VALUE;
int min = Integer.MAX_VALUE;

for (int num : numbers) {
    if (num > max) {
        max = num;
    }
    if (num < min) {
        min = num;
    }
}

System.out.println("최대값: " + max);
System.out.println("최소값: " + min);

반복문을 사용하여 HashSet의 요소를 순회하면서 최대값과 최소값을 찾는 예제입니다. `Integer.MIN_VALUE` 및 `Integer.MAX_VALUE`를 초기값으로 설정하고, 각 요소를 비교하여 최대값과 최소값을 업데이트합니다.

예제 2: Collections 클래스의 min() 및 max() 메서드 사용

HashSet<Integer> numbers = new HashSet<>();
numbers.add(10);
numbers.add(30);
numbers.add(20);
numbers.add(50);
numbers.add(40);

int min = Collections.min(numbers);
int max = Collections.max(numbers);

System.out.println("최대값: " + max);
System.out.println("최소값: " + min);

`Collections` 클래스의 `min()` 및 `max()` 메서드를 사용하여 HashSet의 최대값과 최소값을 찾는 예제입니다. 이러한 메서드는 컬렉션의 요소 중 가장 작은 값과 가장 큰 값을 반환합니다.

예제 3: Stream API를 사용하여 최대값 및 최소값 찾기

HashSet<Integer> numbers = new HashSet<>();
numbers.add(10);
numbers.add(30);
numbers.add(20);
numbers.add(50);
numbers.add(40);

OptionalInt maxOptional = numbers.stream().mapToInt(Integer::intValue).max();
OptionalInt minOptional = numbers.stream().mapToInt(Integer::intValue).min();

int max = maxOptional.orElse(Integer.MIN_VALUE);
int min = minOptional.orElse(Integer.MAX_VALUE);

System.out.println("최대값: " + max);
System.out.println("최소값: " + min);

Stream API를 사용하여 HashSet의 최대값과 최소값을 찾는 예제입니다. `mapToInt()`를 사용하여 요소를 int로 매핑한 후, `max()` 및 `min()` 메서드를 사용하여 최대값과 최소값을 찾습니다.