// for문의 기본적인 형식
for(초기화식; 조건식; 증감식){
실행문
}
// 초기화식 없이도 가능하다.
int i = 0;
for(; i <= 100; i++){
...
}
// 초기화식이나 증감식은 두 개 이상도 가능하다.
for(int i = 0, j = 100; i <= 50 && j >= 50; i++, j --) {
...
}
// for 괄호안에 아무 내용도 작성하지 않으면 무한 반복이 된다.
for(;;){
...
}
// for-each문 (향상된 for문)
// seasons 배열에 있는 값을 하나씩 꺼내서 season 변수에 할당한다.
// 가독성이 좋다는 장점도 있지만 인덱스를 사용 못하고 배열이나 ArrayList의 값을 수정할 수 없다는 단점도 있다.
String[] seasons = {"spring", "summer", "fall", "winter"};
for(String season : seasons){
...
}
break;
는 본인을 감싸고 있는 반복문의 중괄호 하나를 벗어날 것이라는 의미이다. continue;
를 통해 continue문 아래에 있는 실행해야 하는 문장들을 건너 뛰고, 다음 반복을 시작한다. // while문의 기본적인 형식
while(조건식){
실행문
}
// while문의 초기식과 증감식
int a = 0; // 초기식
while(a <= 10){
System.out.println(a);
a++; // 증감식
}
// break문 사용하여 반복문종료
// 조건은
public class Main {
public static void main(String[] args) {
int i = 0;
int sum = 0;
while(i < 10){
sum += (i + 1);
i++;
if(i==5)
break;
}
System.out.println(sum); // 출력값 15
}
}
// continue문을 사용하여 반복문을 제어할 수 있다.
public class Main {
public static void main(String[] args) {
int i = 0;
int sum = 0;
while(i < 10){
if(i==4){
i++; // 증가시켜주지 않으면 무한반복에 빠진다.
continue;
}
sum += (i+1);
i++;
}
System.out.println(sum); // 출력값 50, continue 통해 +5 스킵
}
}
// do while 반복문
// 처음 do{}부분을 실행하면 i의 값이 1이므로 while 조건식에 true가 되므로 다시 do{}로 진입한다.
// while 조건식에 false가 되면 do while 반복문이 종료되며 sum을 출력한다.
public class Main {
public static void main(String[] args) {
int i = 0;
int sum = 0;
do{
sum += (i+1);
i++;
}while(i<10);
System.out.println(sum); // 출력값 55
}
}
조건과 언제 시행되는지에 관해
while -> i++ 없으면 무한 루프 빠지지 않게 조심