
문제

정답
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 | 
