티스토리 뷰

728x90

이차원 배열에서 최댓값, 최솟값 구하는 방법에는 2가지가 있다.

 

최댓값 구하기

1️⃣ 반복문 사용

int[][] num = new int[][]{{0,1,3,4},{5,6,3,8},{0,9,2,10},{1,7,8,7}};

int max1 = 0;
for(int[] arr : num){
    for(int item : arr){
        max1 = Math.max(max1, item);
    }
}
System.out.println("max1 : " + max1);

 

2️⃣ stream 사용

int[][] num = new int[][]{{0,1,3,4},{5,6,3,8},{0,9,2,10},{1,7,8,7}};
int max2 = Arrays.stream(num).flatMapToInt(Arrays::stream).max().getAsInt();
System.out.println("max2 : " + max2);

 

 

1번과 2번 동일하게 최댓값 10으로 출력이 되는걸 확인 할 수 있다.

 

최솟값 구하기

1️⃣ 반복문 사용

int[][] num = new int[][]{{0,1,3,4},{5,6,3,8},{0,9,2,10},{1,7,8,7}};

int min1 = 0;
for(int[] arr : num){
    for(int item : arr){
        min1 = Math.min(min1, item);
    }
}
System.out.println("min1 : " + min1);

 

2️⃣ stream 사용

int[][] num = new int[][]{{0,1,3,4},{5,6,3,8},{0,9,2,10},{1,7,8,7}};
int min2 = Arrays.stream(num).flatMapToInt(Arrays::stream).min().getAsInt();
System.out.println("min2 : " + min2);

 

 

1번과 2번 동일하게 최솟값 0으로 출력이 되는걸 확인 할 수 있다.

 

 

 

 

 

 

참고 : https://comdoc.tistory.com/entry/%EC%9E%90%EB%B0%94-2%EC%B0%A8%EC%9B%90-%EB%B0%B0%EC%97%B4

728x90

'Coding > JAVA' 카테고리의 다른 글

IntStream.range / rangeClosed ?  (0) 2024.06.23
Long 보다 더 큰 숫자 data type BigInteger  (0) 2024.06.21
Java Array - 자바 배열  (0) 2022.11.07
String method  (0) 2022.11.07
변수 및 자료형  (1) 2022.11.04