for문
while문
do-while문
💡 for문과 while문은 구조와 기능이 유사하여 어느 경우에나 서로 변환 가능
💡 반복 횟수를 알고 있을 때는 for문, 그렇지 않을 때는 while문 사용
🍕 for문의 구조와 수행순서
초기화
조건식
증감식
블럭{}
4부분으로 구성for(초기화;조건식;증감식) { //조건식이 참(true)인 동안 수행 }
콤마 ,
를 구분자로 사용for(int i = 1; i <= 10; i++) { ... } //변수 i의 값을 1로 초기화
for(int i = 1,j=0; i <= 10; i++) { ... } //int타입 변수 i와 j를 선언하고 초기화
for(int i = 1; i <= 10; i++) { ... } // 'i<=10'가 참인 동안 블럭{}안의 문장 반복
++
이 사용되지만 다양한 연산자들로 증감식 작성 가능for(int i = 1; i <= 10; i++) { . . . } //1부터 10까지 1씩 증가
for(int i = 10; i >= 1; i--) { . . . } //10부터 1까지 1씩 감소
for(int i = 1; i <= 10; i+=2) { . . . } //1부터 10까지 2씩 증가
for(int i = 1; i <= 10; i*=3) { . . . } //1부터 10까지 3배씩 증가
쉼표 ,
를 이용해 두 문장 이상을 하나로 연결 가능for(int i = 1, j = 10; i <= 10; i++, j--){ . . . } //1부터 10까지 i는 1씩 증가, j는 1씩 감소
중첩 for문
: for문 안에 또 다른 for문 포함하는 것이며, 중첩 횟수는 거의 제한이 없음 ex)5행 10열의 별찍기
for(int i = 1; i <= 5; i++) {
System.out.println("**********"); //10개의 별을 출력
ex)10열의 별을 for문으로 찍기
for(int j = 1; j <= 10; j++) {
System.out.print("*");
}
System.out.println();
ex)중첩for문으로 5행 10열 별찍기
for(int i = 1; i <= 5; i++) {
for(int j = 1; j <= 10; j++) {
System.out.print("*");
}
System.out.println();
}
별찍기 예제