안녕하세요.
https://blog.naver.com/sysysy0302 여니입니다 :)
yeonee 블로그 : 네이버 블로그
예쁘고 맛있게 먹고 건강하게,강인하지만 온화하게 행하라. ※맛스타운스타일상 인스타 www.instagram.com/s2._.y25n ※맛집감성일상 유튜브https://youtube.com/channel/@S2_yeonee 티스토리https://yeoneeluv.tistory.co
blog.naver.com
배열의 내용을 탐색할 때 for 문을 좀 더 간편하게 사용할 수 있는 방법이 있습니다.
* 배열의 반복문
String [] members = { 초코, 딸기, 바나나};
for (int i = 0; i < mambers.length; i++) {
String member = members [i]; // 첫번째 i 값은 0이 되어 members에는 '초코'가 담겨 화면에 출력된다. 두번째 i 값은 1이 되어 members에는 '딸기'가 담겨 화면에 출력된다. 세번째 i 값은 2가 되어 members에는 '바나나'가 담겨 화면에 출력된다.
System.out.println(member + "음료 주문하겠습니다.");
}
출력값 =>
// 초코 음료 주문하겠습니다.
// 딸기 음료 주문하겠습니다.
// 바나나 음료 주문하겠습니다.
해석 =>
int i = 0; : 초기화
i < mambers.length; : 반복조건
i++ : 반복실행 // 반복문이 실행될때마다 i 값을 1씩 증가
* For each 반복문
String [] members = { 초코, 딸기, 바나나};
for (String e : members) {
System.out.println( e + " 음료 주문하겠습니다.");
}
출력값 =>
// 초코 음료 주문하겠습니다.
// 딸기 음료 주문하겠습니다.
// 바나나 음료 주문하겠습니다.
해석=> members 값들을 배열 e에 하나씩 담은 값을 출력하겠다.
위의 구문은 배열 members의 값을 변수 e에 담아서 중괄호 구간 안으로 전달해줍니다. 반복문의 종료조건이나 종료조건을 위해서 기준값을 증가시키는 등의 반복적인 작업을 내부적으로 감춘 것이라고 할 수 있습니다. 자바 5.0부터 도입된 기능입니다.
이클립스에서 오류가 발생한다면 아래와 같이 자바의 버전을 변경해주도록 합니다. 가장 높은 버전으로 지정합니다.
String [] members = { 초코, 딸기, 바나나};
System.out.println(members[3]);
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3
at ot_array.ExceptionDemo.main(ExceptionDemo.java:7)
ArrayIndexOutOfBoundsException은 존재하지 않는 인덱스를 사용하려고 했을 때 발생합니다.
배열 members는 인덱스가 2까지 존재하는데 3을 사용했기 때문에 발생한 오류입니다.
비유를 하자면 3가지 메뉴를 주문할 수 있는데, 메뉴에 없는 음료를 주문한 셈입니다.
아래는 동일한 오류를 발생시킵니다.
String [] members = new String[3];
members[0] = "초코";
members[1] = "딸기";
members[2] = "바나나";
members[3] = "오렌지";
배열을 선언 할 때 이 배열의 크기를 3개의 문자열을 수용할 수 있는 크기로 지정했는데 더 많은 데이터를 추가하려고 하기 때문에 발생한 에러입니다. 비유를 하자면 음료 3가지만 만들수 있는 가게에서 만들수 없는 음료 메뉴를 +1 넣으려고 하면서 발생한 오류라고 할 수 있습니다.
+아래의 링크 내용을 참고하여 공부하였습니다.
'⋆ 。゜☁︎ 。⋆ 。゜☾゜。⋆⋆ 。゜☁︎ 。⋆ 。゜☾゜。⋆' 카테고리의 다른 글
[자바/JAVA/나의 공부기록] 배열 개념 및 정의, 배열 해석방법 (0) | 2023.07.16 |
---|