✅
for문
반복된 횟수를 알고있을 경우 사용하기 적합한 반복문
"for"라는 예약어를 만나는 경우 ( ) 안에 있는 조건이 참이면 반복실행하겠다. 라는 뜻
(1)
for(`초기화; 조건식; 증감식;) {
// 조건식이 참일 때 수행될 문장들
}
초기화;
변수를 초기화하는 부분이며 처음에 기준값이 된다.
for(초기화; 조건식; 증감식;) {
// 조건식이 참일 때 수행될 문장들
}
for의 뜻이 '~하는 동안' 이므로 조건식이 참인 동안 반복을 계속한다.
예를 들어 (int i=1; i<10; i++) 라고 가정한다면 i는 1을 초기값(i=1)으로 가지며 i가 10 보다 낮으면(i<10) 계속 반복하겠다 라는 뜻이다.
for(초기화; 조건식; 증감식; ) {
// 조건식이 참일 때 수행될 문장들
}
반복문에서 초기화에 사용한 변수를 증가 또는 감소시키는 식이다.
처음 초기화시킨 i=1 의 변수 값을 ++(증가) 점진적으로 증가시켜 결국 조건이 거짓이 되어 (i가 10보다 커졌을 때) for문을 벗어나게 된다.
for(int i =1; i<=10; i++) { ... } // 1부터 10까지 1씩 증가
for(int i =1; i<=10; i--) { ... } // 1부터 10까지 1씩 감소
for(int i =1; i<=10; i+= 2) { ... } // 1부터 10까지 2씩 증가
for(int i =1; i<=10; i*= 3) { ... } // 1부터 10까지 3배씩 증가
for( ) {
} for문에서 이 코드블럭( {} )이 한 범위이다. 그렇기 때문에 for문의 범위 내에서 사용된 지역변수는 for문이 종료되는 순간 소멸한다. 또한 범위가 끝나기 전에 만나는 코드들은 모두 실행시키고 다시 조건식으로 올라온다는 점을 꼭 기억하자 .
// 구구단 example.
for(int i= 2; i < 10; i++){
System.out.println( "=== " + i + "단 ===" );
for(int j= 1; j < 10; j++){
int result = i*j;
System.out.println( i + " * " + j + " = " + result);
}
}
for(예약어)가 읽혀 ( ) 안에 식들을 참인지 거짓인지 확인함.int i = 2; i 라는 변수에 2 라는 값을 초기값으로 셋팅함.i < 10 라는 조건에 부합함으로 (2 < 10) 코드블럭실행 { }for등장 동일하게 조건을 확인하고 진행for문에서는 System.out.println( i + " * " + j + " = " + result); } 를 마지막으로 코드블럭이 닫힌다. 코드블럭이 닫히기 전까지 모든 코드를 실행시켰고 더 이상 실행시킬 코드가 존재하지 않으니 다시 반복하기 위해 두 번째 for문으로 올라간다.for문을 반복에 반복을 거쳐 조건이 부합하지 않을 경우 두 번째 for문을 탈출하게 되고 탈출한 뒤엔 원래 진행하던 첫 번째 for문의 흐름을 이어탄다.// 1부터 10까지의 합을 구한 뒤 평균을 구하는 Example
int sum = 0; // 전역변수를 선언.
for(int i=1; i<11; i++){
sum = sum + i;
System.out.println(sum);
}
int avg = sum / 10;
System.out.println(avg);
int sum = 0; 이라는 전역변수 선언for가 읽혀 int i=1 라는 초기값을 가지고 i<11 을 만족할 때까지 증가하는 for문 실행sum = sum + i 를 통해 기존의 값에 i를 더해가는 계산식을 실행 (for 내 존재하는 지역변수는 for문의 범위를 벗어나는 순간 폐기)avg 라는 변수에 담아 평균 값을 계산한 후 출력.// for문의 꽃 별찍기
for(int i = 1; i<6; i++){
for(int j = 5; j>i; j--){
System.out.print(" ");
}
for(int n=0; n<i; n++){
System.out.print("*");
}
System.out.println();
}
for문 실행for문 실행 -> System.out.print(" "); j>i (j>1)가 만족할 때 까지 반복 -> 탈출for문 실행 -> 동일하게 조건 만족할 때 까지 출력-> 탈출for문에 해당하는 System.out.println(); 실행 후 다시 첫 번째 for문 타러 이동i<6 인 조건과 부합하지 않아 (flase) 첫 번째 for문 탈출. 첫 번째 for문을 탈출한 순간 두 번째 세 번째는 자연스럽게 타지못하게 됨. 
--작성중--