Java 기초 배열 - 연습문제(3)
728x90
기본 환경
JDK : 1.8.0_261 버전 JRE : 1.8.0_261 버전 JAVA VERSION : 8 업데이트 261 Eclipse IDE VERSION : 2020-06버전 |
시나리오
answer배열에 1,4,4,3,1,4,4,2,1,3,2 값을 초기화 하고 숫자의 갯수를 출력하는 프로그램을 만드시오.
(단, if문을 사용하지 말것.)
다음과 같은 결과가 나와야 합니다.
정답
package ex06array;
public class QuNumberCounter {
public static void main(String[] args) {
int[] answer = {1,4,4,3,1,4,4,2,1,3,2};
/*
배열을 크기를 지정하여 선언하면 0으로 채워진다.
*/
int[] counter = new int[4];
for(int i = 0; i < answer.length; i++) {
// if(answer[i] == 1) {
// counter[0] ++;
// }
// else if(answer[i] == 2) {
// counter[1] ++;
// }
// else if(answer[i] == 3) {
// counter[2] ++;
// }
// else if(answer[i] == 4) {
// counter[3] ++;
// }
/*
위 if~else문을 한줄로 수정하면 다음과 같다
검색한 숫자가 만약 1이라면 counter배열의 0번 인덱스를
+1 증가시키므로 아래와 같이 표현할 수 있다.
*/
counter[answer[i]-1]++;
}
for(int i = 0; i < counter.length; i++) {
System.out.println("counter[" + i + "] =>" + counter[i] );
}
}
}
if문을 사용하면 매우 쉬운 문제이지만 그럼 재미가 없죠. 코드가 짧다고 꼭 좋은 프로그램은 아니지만 그래도 짧게 짤 수 있는 코드라면 그 방법도 알고 있어야 합니다.
'Java > Java_기초부터 _끝까지' 카테고리의 다른 글
Java 기초 배열 - 연습문제(5) (0) | 2020.10.26 |
---|---|
Java 기초 배열 - 연습문제(4) (0) | 2020.10.26 |
Java 기초 배열 - 연습문제(2) (0) | 2020.10.26 |
Java 기초 배열 - 연습문제(1) (0) | 2020.10.26 |
Java 기초 for-each(2) (0) | 2020.10.23 |