[목차]
- 반복문 while
- 반복문 for
- 반복문이 없다면?
- break, continue
- 반복문의 중첩
반복문 while
- 외부에 변수를 만들어서 값을 초기화하고 while문 안에 값을 증가 시킵니다
while(조건) {
반복 실행 영역
}
// 결과값: Coding Exerybody
while (true) {
System.out.println("Coding Exerybody");
}
// 자바는 이게 동작하지 않을 반복문이라고 알려주는 에러가 발생
// 실행되지 않음
while (false) {
System.out.println("Coding Exerybody");
}
int i = 0;
// i의값이 10보다 작다면 true, 크다면 false가 됩니다. 현재 i의 값은 0이기 떄문에 Codeing Exerybody 0 부터 출력됩니다.
while (i < 10) {
System.out.println("Coding Exerybody" + i);
// i의 값에 1을 더합니다. 반복문의 중괄호의 마지막 라인에 도달하면 반복문이 끝나게 됩니다.
// i = i + 1; 과 똑같습니다.
i++;
}
반복문 for문
- while과 for문은 서로 대체가 가능하기 떄문에 취향에 맞춰서 사용하면 됩니다.
for (초기화; 종료조건; 반복실행) {
반복적으로 실행될 구문
}
// 결과값: 0 ~ 9까지 출력
for (int i = 0; i < 10; i++) {
System.out.println("Coding Everybody " + i);
}
// 초기화
int i = 0;
// 종료 조건
while (i < 10) {
System.out.println("Coding Exerybody" + i);
// 반복실행
i++;
}
// 5 ~ 19까지 출력하는데 2씩 증가하면서 출력
// 5 ~ 19 출력
// 초기화 종료조건 반복실행
for (int i = 5; i < 20; i += 2) {
System.out.println("Coding Everybody " + i);
}
반복문이 없다면?
// exding everybody를 10번 반복해서 출력하고 싶다면 이런 식으로 출력을 해야 합니다.
// 좀 큰 규모의 데이터를 다뤄야 한다면 반복문의 효응이 드러나기 시작합니다.
// ex) coding everybody를 1천 번 출력해야 한다면 for문이 있고 없고에 따라 차이가 있을 것 입니다.
System.out.println("Coding Exerybody");
System.out.println("Coding Exerybody");
System.out.println("Coding Exerybody");
System.out.println("Coding Exerybody");
System.out.println("Coding Exerybody");
System.out.println("Coding Exerybody");
System.out.println("Coding Exerybody");
System.out.println("Coding Exerybody");
System.out.println("Coding Exerybody");
System.out.println("Coding Exerybody");
for (let i = 0; i < 1000; i++) {
System.out.println("Coding Exerybody");
}
// codeing everybody 뒤에 붙는 숫자를 2의 배수하고 싶다고 했을 때 반복문이 없다면
// 한줄 한줄 수정해야 할 것 입니다.
System.out.println("Coding Exerybody" + 2);
System.out.println("Coding Exerybody" + 4);
System.out.println("Coding Exerybody" + 6);
// 하지만 반복문에서는 내용을 조금만 변경하면 됩니다.
int i = 0;
while(i < 10) {
System.out.println("Coding Exerybody"+ (i+1)*2);
i++;
}
break
- 반복작업을 중간에 중단시키고 싶을 때 break를 사용하면 됩니다.
// for에서 0 ~ 9까지 출력을 합니다
for (int i = 0; i < 10; i++) {
// if에서 i 가 5가 되면 break;를 실행시켜 if문을 멈춥니다.
if (i == 5)
break;
System.out.println("Coding Everybody");
}
// 예상 결과값: Coding Everybody 0 ~ 9까지 출력
// 결과값: Coding Everybody 0 ~ 4까지 출력
continue
// for에서 0 ~ 9까지 출력을 합니다
for (int i = 0; i < 10; i++) {
// if에서 i 가 5가 되면 continue가 실행되기 때문에 5에서 멈추기 때문에 Coding Everybody 5가 빠집니다.
// 빠진 후 다시 9까지 실행됩니다.
// 한 줄일 때 {} 사용 안해도 됩니다.
if (i == 5)
continue;
System.out.println("Coding Everybody");
}
반복문의 중첩
// i 가 0 ~ 9까지 실행
// i가 0 실행 후 i for문 안에 있는 데이터 실행
// i for문 실행 후 j for문 실행
// i == 0일 때 j 0 ~ 9까지 실행
// i == 1일 떄 j 0 ~ 9까지 실행 i가 10이 되면 동작을 멈춤
// 결과값: 0 ~ 99까지 실행
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; i++) {
System.out.println(i + "" + j);
}
}