김영한 선생님의 인프런 자바 초보 강의를 듣고 있다. 다시 자바를 하게 되서 리마인드 차원에서 듣고 있다. 새롭게 알게 되는 내용들이 있다면 여기에 추가할 예정
public class While_1 {
public static void main(String[] args) {
int i = 0;
while(i<3) {
System.out.println("이것은 " + i + "번째 반복했습니다.");
}
}
}
while에서 중요한 것
while(true) 의 상황이 된다면 반복문은 멈추지 않는다. 잘 못하면 컴퓨터가 견디지 못하고 프로그램이 종료 될지도.public class For2 {
public static void main(String[] args) {
int sum = 0;
int endNum = 3;
for (int i = 1; i <= endNum; i++) {
sum = sum + i;
System.out.println("i = " + i + " sum=" + sum);
}
}
}
for는 While에서 조건으로 사용한 변수 i가 for()로 들어가 있다. for 문 구조를 보면 정확하게 어떻게 동작하는 지 알 수 있다.
for문 구조
for (1.초기식; 2.조건식; 4.증감식) {
3.코드
}
//실행순서 1번 > 2번 > 3번 > 4번 > 2번 > 3번 > 4번
이렇게 1번은 단 한번만 실행되고 조건이 false가 될 때까지 2번 > 3번 > 4번 이 반복된다.
while문으로도 코딩하는데 어려움이 없지만, for이 훨씬 구조적으로 깔끔한 코드를 구연할 수 있기 때문에 for문이 좋다.
while 에서는 반복문을 위해 사용된 i라는 변수가 밖에 나와 있지만, for 문은 바로 옆 괄호에 들어가 있기 때문에, 반복의 조건이나, 변수 선언에 관련해서 한번에 파악 할 수 있다는 장점이 있다. 좋은 코드는 한번에 확인 할 수 있고, 수정할 때 변경점이 적은 코드가 확실히 좋은 코드 인거 같다.
for (;;) {
//실행 코드
}
위에 처럼 (;;) 초기식, 조건식, 증감식 없이 for(;;)를 쓰면 무한루프가 된다!