조건
1. JDK 1.5 이상
2. 사용할 변수는 지역변수로 인식된다. (for문 안에서 사용되기 때문이다.)
3. 대상은 배열 OR 여러 원소를 포함한 자료형이어야 한다.
장점
1. 간단하고 가독성이 좋은 코드
2. 배열 인덱스 문제 해결 (ArrayIndexOutOfBoundsException 예외를 피할 수 있다.)
단점
1. 배열의 인덱스를 사용하지 못한다.(일반 for문의 (int i=0;) 할 때 i 같은 인덱스를 말하는 것) 하지만 방법은 있다.
* 중요*
2. 배열이나 ArrayList 값을 사용할 순 있지만 절대 수정할 수는 없다.
사용 이유
배열처럼 여러 원소로 이루어진 집합의 모든 원소에 대해 특정 작업을 반복하기 위해 사용
자주 사용되는 상황
1. ArrayList 원소 출력
2. 배열 원소 출력
속도
일반 for문이 더 빠르다는 소문이 있어서 테스트해봤는데, 결과는 비슷하다.
일반 for문 == 개선된 for문
문법
for(자료형 변수명 : 배열명){
문장
}
쉽게 설명하면
for(자료형 한 단계 아래의 자료형의 변수명 : 배열명){
}
정확히 말하면 아래의 자료형이 아니지만 이렇게 생각하면 이해하기 쉽더라고요
실전 예제1 - 일반 배열 원소 추출
String[] arr = {"1-1","1-2","1-3","1-4","1-5"};
for(String s : arr){
System.out.println(s);
}
결과
1-1
1-2
1-3
1-4
1-5
실전 예제 2 - 이차원 배열 원소 추출
String[][] arr = {{"1-1","1-2","1-3","1-4","1-5"},{"2-1","2-2","2-3","2-4","2-5"}}; for(String[] arrs : arr) { for(String s : arrs) { System.out.println(s); } }
결과
1-1
1-2
1-3
1-4
1-5
2-1
2-2
2-3
2-4
2-5
'Programming > JAVA' 카테고리의 다른 글
[JAVA] Error - 인증서 검증을 실패했습니다. 애플리케이션이 실행되지 않습니다 (1) | 2021.11.15 |
---|---|
[Java] File Input / Output 입출력 Code (0) | 2020.09.22 |
Java의 기본 개념 (0) | 2020.05.07 |