while(조건식){
수행문 1 -> 조건식이 참인 동안 수행문1 반복 실행
}
예제 1부터 10까지 더하기
public class WhileTest {
public static void main(String[] args) {
int num = 1;
int sum = 0;
while( num <= 10){
sum += num;
num++;
}
System.out.println(sum);
System.out.println(num);
// 결과 : 55
// 결과 : 11
}
}
public class DoWhileTest {
public static void main(String args[]){
Scanner scanner = new Scanner(System.in);
int input;
int sum = 0;
do{
input = scanner.nextInt();
sum += input;
}while(input != 0);
System.out.println(sum);
}
}
public class DoWhileTest {
public static void main(String args[]){
Scanner scanner = new Scanner(System.in);
int input;
int sum = 0;
do{
input = scanner.nextInt();
sum += input;
}while(input != 0);
System.out.println(sum);
// 결과: 55
}
}
while문 | do-while문 | for문 | |
---|---|---|---|
수행 | 조건이 참인 동안 반복수행 조건이 맞지 않으면 수행되는 부분 없음 | 조건이 참인 동안 반복수행 수행문을 먼저 수행하고 조건 체크 | 초기화, 조건체크, 증감 순으로 수행 |
쓰임 | 조건식의 결과나 변수가 true, false값인 경우 주로 사용 | 조건식의 결과나 변수가 true, false값인 경우 주로 사용 | 특정수의 범위, 횟수와 관련하여 반복되는 경우 주로 사용 배열과 함께 많이 사용됨 |
int i = 0;
for(; i<5 ; i++){
수행문 // 초기화식 생략
}
for(i=0 ; ; i ++){
sum += i;
if(sum > 200) break; // 조건식 생략
}
for(i = 0 ; i < 5 ; ){
i = (++i) % 10; // 증감식 생략
}
for( ; ; ){
// 무한 반복
}
예제 구구단을 for문과 while 문으로 구현하기
public class NestedLoopTest {
public static void main(String[] args){
int dan = 2;
int count = 1;
for(dan = 2; dan < 10; dan++){
for(count = 1; count < 10 ; count++){
System.out.println(dan + "*" + count + "=" + dan*count);
}
}
System.out.println("*************************");
dan = 2;
count = 1;
while(dan < 10){
while(count < 10){
System.out.println(dan + "*" + count + "=" + dan*count);
count++;
}
dan++;
count = 1;
}
}
}
예제
public class ContinueBreakTest {
public static void main(String args[]){
int i = 0;
int num;
for(num = 1 ; ; num++){
i += num;
if(i >=100) break;
}
System.out.println(i);
System.out.println(num);
int number;
for(number=1 ; number <= 100 ; number++){
if (number % 3 != 0) continue;
System.out.println(number);
}
}
}