1) for문을 while문으로 변경하세요.
- for 문
private static void test4_5() { for (int i = 0; i <= 10; i++) { for (int j = 0; j <= i; j++) System.out.println("*"); System.out.println(); } } |
- while 문
public static void WhiTest() { int i = 0; while (i <= 10) { int j = 0; while (j++ <= i) { System.out.println("*"); } i++; System.out.println(); } } |
============================================================================
private static void test6() { for (int i = 1; i < 7; i++) { for (int j = 1; j < 7; j++) { int sum = i + j; if (sum == 6) { System.out.println("i:" + i + "+" + "j:" + j + "=" + sum); } } } } |
결과
i:1+j:5=6 i:2+j:4=6 i:3+j:3=6 i:4+j:2=6 i:5+j:1=6 |
While 문
for문에 비해 while문은 구조가 간단하다. If문처럼 조건식과 블록{}만으로 이루어져 있다. 다만 if문과 달리 while문은 조건식이 ‘참(ture)인 동안’, 즉 조건식이 거짓이 될 때까지 블록{} 내의 문장을 반복한다.
While (조건식) { //조건식의 연산결과가 참(true)인 동안, 반복될 문장들을 적는다. } |
for문과 while문의 비교
1부터 10까지의 정수를 순서대로 출력하는 for문을 while문으로 변경해보자.
- For문
private static void test1() { for (int i = 1; i <= 10; i++) { System.out.println(i); } } |
- While문
private static void test2() { int i = 1; while (i<=10) { System.out.println(i); i++; } } |
while문이 더 좋은경우 => 만일 초기화이나 증감식이 필요하지 않은 경우라면, while문이 더 적합할 것이다. 위의 1부터 10까지의 정수를 순서대로 출력하는 것은 for문이 더 보기 쉽다.
while문의 조건식은 생략불가
그래서 while문의 조건식이 항상 참이 되도록 하려면 반드시 true를 넣어야 한다. 다음의 두 반복문은 블록{} 내의 문장을 무한 반복한다.
While(true) { //조건식이 항상 참 … } |
For(;;) { … } |
Do – while문
Do - while문은 while문의 변형으로 기본적인 구조는 while문과 같으나 조건식과 블록의 순서를 바꿔놓은 것이다. 그래서 while문과 반대로 블록{}을 먼저 수행한 후에 조건식을 평가한다. while문은 조건식의 결과에 따라 블록{}이 한 번도 수행되지 않을 수 있지만, do -while문은 최소한 한번은 수행될 것을 보장한다.
Do {
//조건식의 연산결과가 참일 때 수행될 문장들을 적는다.
}while (조건식); <- 끝에 ‘;’을 잊지 않도록 주의
그리 많이 쓰이지는 않지만, 반복적으로 사용자의 입력을 받아서 처리할 때 유용한다.
break문
break문은 자신이 포함된 가장 가까운 반복문을 벗어난다. 주로 if문과 함께 사용되어 특정 조건을 만족하면 반복문을 벗어나도록 한다.
자바의 정석 보면서 정리함.
'JAVA' 카테고리의 다른 글
JDBC CRUD TEST (0) | 2019.11.19 |
---|---|
intellij (student account) & github Interlink (0) | 2019.08.20 |
합이 6이 되는 경우의 수 출력 (0) | 2019.05.03 |
Java Class & Object에 관해서 (0) | 2019.04.16 |
[JAVA] Caesar cipher Coding 하기 (0) | 2019.04.12 |
댓글