이번 포스팅에서는 조건문에 이어 프로그래밍의 핵심이라고 할 수 있는 반복문입니다.
반복문은 아래와 같이 100줄에 작성될 코드를 단 몇 줄로 줄일 수 있는 구문입니다.
System.out.println("Hello, World!");
System.out.println("Hello, World!");
System.out.println("Hello, World!");
System.out.println("Hello, World!");
System.out.println("Hello, World!");
System.out.println("Hello, World!");
System.out.println("Hello, World!");
...
System.out.println("Hello, World!");
"Hello, World!"를 출력하는 100줄을
for (int i = 0; i < 100; i++) {
System.out.println("Hello, World!");
}
이렇게 3줄 혹은
int i = 0;
while( i < 100 ) {
System.out.println("Hello, World!");
i++;
}
5줄로 줄일 수 있습니다.
for 문
for 문의 용법은 아래와 같습니다.
for (int i = 0; i < 100; i++) {
System.out.println("Hello, World!");
}
변수 초기화는 처음 for 문이 실행될 때 1회 실행됩니다.
위의 코드에서 볼 수 있는 'int i = 0'이 변수 초기화 부분입니다.
조건은 for 문 안의 동작이 실행될 조건을 의미합니다.
위의 코드에서 볼 수 있는 'i < 100'이 조건 부분입니다.
'i < 100'의 의미는 i가 100보다 작은 동안만 for 문 안의 동작을 실행하라는 것입니다.
변수 증감은 for 문 안의 동작을 1회 실행한 후, 변수를 얼마나 증감시킬지 결정합니다.
위의 코드에서 볼 수 있는 'i++'의 의미는 변수 i의 값을 1 증가시키라는 것입니다.
위의 코드가 실행될 경우, 아래와 같은 순서로 진행됩니다.
-
int i = 0으로 초기화
-
i가 100보다 작은 지 확인
-
i가 100보다 작으므로 "Hello, World!" 출력
-
i++을 실행해 i의 값 1로 증가
-
i가 100보다 작은 지 확인
-
i가 100보다 작으므로 "Hello, World!" 출력
-
i++을 실행해 i의 값 2로 증가
... i가 100보다 작은 지 확인, i가 100이므로 조건을 만족시키지 않아 for 문 종료
이렇게 "Hello, Wordl!"가 100줄 출력됩니다.
직접 for 문을 여러 가지로 수정해 실행해보시면 쉽게 이해가 되실 겁니다.
while
whlie의 용법은 아래와 같습니다.
int i = 0;
while( i < 100 ) {
System.out.println("Hello, World!");
i++;
}
while 문도 for 문과 마찬가지로 조건이 만족할 경우, while 문 안의 동작이 실행됩니다.
for 문과 while 문은 서로 대체가 가능합니다.
따라서 그 형태와 사용법도 비슷합니다.
위의 코드를 보면 int i =0으로 초기화한 후,
-
while 문을 만나 while 문의 조건을 확인합니다.
-
i가 100보다 작은 지 확인 후 i가 100보다 작으면 "Hello, World!"를 출력하고 i가 100과 같거나 크다면 while 문을 종료합니다.
-
그 후 i++을 실행해 i의 값이 1만큼 증가합니다.
-
1로 돌아가 반복합니다.
for 문과 while 문 중 본인이 편한 방법으로 사용하시면 됩니다.
조건문과 반복문만 아셔도 Java의 반은 익히신 것이라고 생각하셔도 무방합니다.
'하고 싶은 거 하는 개발 > Java 프로그래밍 기초' 카테고리의 다른 글
[JAVA] 자바(JAVA) 배열에 대하여(array) (0) | 2021.02.15 |
---|---|
[JAVA] 자바(JAVA) 논리 연산자에 대하여(&&, ||, !) (0) | 2021.02.04 |
[JAVA] 자바(JAVA) 조건문에 대하여(switch 문) (0) | 2021.01.25 |
[JAVA] 자바(JAVA) 조건문에 대하여(if 문) (0) | 2021.01.21 |
[JAVA] 자바(JAVA) 비교 연산자에 대하여(+equals, boolean 타입) (0) | 2020.11.22 |