/*
<FOR 문>
◎ for 문 은 특정 동작(코드블럭)을 반복하고자 할때 사용한다.
for (선언부; 조건부; 변수가감){
//반복할 코드
}
- 'for' 문은 일반적으로 특정 정수형 변수의 값을 초기화하고 그 값을 가감하며 조건부의 조건이 참일때
반복하게 하는 것이 일반적이다.
- 선언부에서 선언된(혹은 초기화된) 변수의 값을 가감하여 조건부의 조건이 참일 때 반복할 코드를
반복하여 실행한다.
- 가령, 1부터 3까지의 정수를 출력하기 위해 아래와 같이 for 문을 작성할수 있다.
- 변수 가감에는 전/후위 증감 연산자 혹은 복합 대입 연산자를 사용할수 있다.
- 또한, 변수 가감은 별도의 구문으로 인식됨으로 전위 증감과 후위 증감에 따른 반복에 차이가 없다.
for (int i = 1; i <= 3; i++) {
System.out.println(i);
}
1.변수 i가 1로 선언 및 초기화 된다.
2.조건부를 확인한다. 이때, 조건부의 조건은 i <= 3 인데 여기서 i가 1임으로 참 ( true )
이 됨으로 for 코드 블럭을 1회 실행한다. (1 출력)
3.변수를 가감한다. 위 코드에서 가감 코드는 i++임으로 i가 2가된다.
4.조건부를 확인한다. 이때 조건부의 조건은 i <= 3 이고 i가 2임으로 참 ( true )이 됨으로
for 코드 블럭을 1회 실행한다 (2 출력)
5.변수를 가감한다. 위 코드에서 가감코드는 i++임으로 i가 3이 된다.
6.조건부를 확인한다. 이때 조건부의 조건은 i <= 3 이고 여기서 i가 3임으로 참 ( true )이 됨으로
for 코드 블럭을 1회 실행한다 (3 출력)
7.변수를 가감한다. 위 코드에서 가감코드는 i++임으로, i가 4가 된다.
8.조건부를 확인한다. 이 때 조건부의 조건은 i <= 3 이고 여기서 i가 4임으로 거짓 ( false )이 됨으로
for 문을 빠져 나간다.( for 문 종료 )
- 'break' 는 현재 실행중인 가장 가까운 for 문 등을 종료시키기 위해 사용하는 키워드이다.
- 'continue' 는 현재 실행중인 반복 사이클을 생략하고 다음 사이클로 넘어가기 위해 사용하는 키워드이다.
<향상된 FOR 문(Enhanced For)>
◎ 향상된 for 문은 일반 for 문과 달리 증감에 사용되는 변수 (주로 i) 를 사용하지 않고 배열을
반복할 수 있어 IndexOutOfRangeException 등의 예외로 부터 벗어날 수 있는 이점이 있다.
◎ 마찬가지로, 용법이 일단 for 문에 비해 사용하기 쉬운 이점이 있다.
◎ 단, 증감에 사용되는 변수(i)를 직접 사용해야 할 때에는 향상된 for 문을 사용하지 못한다.
◎ 일반 for 문과 마찬가지로 break 및 continue 키워드를 이용할수 있다.
int[] odds = {1, 3, 5, 7, 9};
for (int i = 0; i < odds.length; i++) //순번
{
System.out.println(odds[i]);
}
위 일반 for 문을 아래와 같이 향상된 for 문으로 변경할 수 있다.
ind[] odds = {1, 3, 5, 7,9}; //요소
for (int odd : odds)
{
System.out.println(odd);
}
위 코드에서는 odds 정수 배열이 가지고 있는 정수인 요소 하나하나를 순서대로 정수인 (임시)변수 odd 에 대입하여
반복하게 된다.
*/