문제
정답
package practice;
public class Exercise6_20 {
public static int max(int[] arr) {
//배열의 크기가 null 혹은 0인 경우
if(arr==null || arr.length ==0)
return -999999;
//배열의 크기가 null, 0 이 아닌 경우
int max = arr[0];
for(int i=1; i<arr.length; i++) {
if(arr[i] > max) {
max = arr[i];
}
}
return max;
}
public static void main(String[] args) {
int[] data = {3, 2, 9, 4, 7};
System.out.println(java.util.Arrays.toString(data));
System.out.println("최댓값:" + max(data));
System.out.println("최대값:" + max(null));
System.out.println("최대값:" + max(new int[] {}));
}
}
1.문제 핵심 key
- 배열을 활용해 최대값을 어떻게 표현할 것인가?
- if문의 조건을 어떻게 나눌것인가?
2.나의 오답원인
- 문제에서 제시한 두 번째 조건(주어진 배열이 null이거나 0이면 -99999를 반환하라)을 if문으로 어떻게 표현할 지 생각 못했다.
//배열의 크기가 null 혹은 0인 경우
if(arr==null || arr.length ==0)
return -999999;
'java > 자바의 정석 연습문제 오답노트' 카테고리의 다른 글
[객체지향 프로그래밍1] 연습문제 6-21 (0) | 2022.12.29 |
---|---|
[배열] 연습문제 5-4 (0) | 2022.10.21 |
[조건문과 반복문] 연습문제 4-4 (0) | 2022.09.29 |
[조건문과 반복문] 연습문제 4-2 (0) | 2022.09.28 |
[조건문과 반복문] 연습문제 4-3 (0) | 2022.09.28 |