728x90
※ while 문법
-조건이 '참'을 만족하는 동안 작업영역을 반복 수행
while (조건) {
반복작업영역;
}
ex)
int i=1,sum=0;
while (i<=50) {
sum+=i;
i++;
}
System.out.printIn("합계결과="+sum);
결과는 아래와 같음)
합계결과=1275
// 위 while 예제를 for문으로 쓰면 아래와 같다
ex)
int sum=0;
for (i=1;i<=50;i++) {
sum+=i;
}
System.out.printIn("합계결과="+sum);
결과는 아래와 같음)
합계결과=1275
무한 loop가 필요한 경우 while문을 사용하고 이때 조건 및 break을 함께 사용한다.
while로 무한루프를 돌릴때는 while (true) 라고 써주면 된다.
ex)
boolean a=true
int cnt=1;
while (a) {
System.out.printIn(cnt+"회 반복수행");
if(cnt==5)
break;
cnt++;
}
System.out.printIn("반복종료");
결과는 아래와 같음)
1회 반복수행
2회 반복수행
3회 반복수행
4회 반복수행
5회 반복수행
반복종료
ex)
int i=1, sum=0;
while (true) {
sum+=i
if(sum>=1000) {
break;
}
i++
}
System.out.printIn("1000 돌파 합계=1부터"+i+"까지 합="+sum);
결과는 아래와 같음)
1000 돌파 합계 1부터45까지 합=1035
※ break과 비슷한 continu문의 사용법
ex)
int sum=0;
while(true) {
Scanner sc=new Scanner(System.in);
int num=cs.nextInt();
if(num==0)
break;
if(num%5!==0)
continue;
sum+=num;
}
System.out.printIn("합계="+sum);
// comtinue는 아래 내용은 실행하지말고 반복을 계속하란 뜻
//예를들어 10 엔터 7 엔터 12 엔터 5 엔터치고 마지막으로 0 엔터처서 입력하면 break 되면서 결과도출
//위 식은 0이 입력되면 식을 종료하고 5의 배수만 sum+=num으로 넘어가 계산되니 결과는 아래와 같음
10
7
23
5
0
합계=15
※ ~do~while문
- 실행영역을 먼저 수행한 후 나중에 지정된 조건을 체크하여 작업 수행
- while은 조건이 만족하지 않으면 한번도 실행하지 않기 때문에 한번도 실행하지 않을 수 있지만 do while은 무조건 한번 이상 실행
do {
반복작업영역;
} while(조건식);
반응형
'공부 > java' 카테고리의 다른 글
java 클래스와 객체 코딩 (0) | 2023.01.11 |
---|---|
java 배열코딩(array) : 1차원 배열과 2차원 배열 (0) | 2023.01.10 |
java 반복문 : for문, 확장 for문 (0) | 2023.01.10 |
java 조건제어 if문, switch문 (0) | 2023.01.10 |
java 연산자 코딩 (0) | 2023.01.10 |