06. Java 기초 3 / 20230419
🧑🏻💻 제어문 - 반복문
💡 반복문
➡️ 코드들이 반복적으로 실행되도록 할 때 사용
📍종류
- for문
- while문
- do-while문
for문과 while은 서로 변환이 가능하기 때문에 반복문을 작성할 때 어느 쪽을 선택해도 좋지만,
for문 → 반복 횟수를 알고 있을 때 주로 사용
while문 → 조건에 따라 반복할 때 주로 사용
🔎 for 문
➡️ 조건식이 참인 동안 주어진 횟수만큼 실행문을 반복적으로 수행
for(초기화; 조건식; 증감식) {
...실행문...
}
- 초기화 : for문이 시작할 때 최초 한 번만 수행, 사용할 변수의 초깃값 정함
- 조건식 : 계속 반복할지 여부를 결정하는 조건, 조건식이 true라면 실행문 실행 false라면 더이상 블록을 실행하지 않고 끝
- 증감식 : 반복 횟수를 결정하는 규칙, 변수에 값을 더하거나 곱하는 등 수행 방식 지정
조건식을 충족하는 동안 초기화식부터 싲가해서 증감식의 규칙을 따라 실행
조건식을 충족하지 않으면 실행하지 않고 끝남
⭐️ 초기화식이 필요 없을 경우에는 초기화식을 생략할 수 있고 초기화식이나 증감식도 둘 이상 가능
🔎 향상된 for문(Enchanced for문)
➡️ 배열과 컬렉션 객체를 좀 더 쉽게 처리할 목적으로 제공
➡️ 반복 실행 위해 카운터 변수와 증감식 제공 x
➡️ 배열 및 컬렉션 항목의 개수만큼 반복하고 자동적으로 for문을 빠져나감
String[] names = {배열1, 배열2, 배열3}
for(String name : names) {
... 실행문...
}
- for문 괄호 안에는 배열에서 꺼낸 항목을 저장할 변수 선언, 콜론 , 사용할 배열 작성됨
🔎 while 문
➡️ 조건식이 true일 경우에 계속해서 반복
(초기화);
while(조건식) {
실행문; //조건식이 참인 동안 실행
증감식;
}
- 초기화와 증감식은 필요없다면 생략 가능
- 조건식에 true를 사용하면 무한 루프! -> 탈출 코드 필요! or break 이용!
🔎 do-while문
➡️ 조건식에 의해 반복 실행하는 기본 개념은 똑같지만 블록 내부의 실행문을 우선 실행시키고 실행 결과에 따라서 반복 실행을 계속할지 결정
do {
(1)실행문 //처음 한 번은 무조건 실행
} while((2)조건식);
- (1)실행문을 먼저 실행하고 모두 실행하고 나면 (2)조건식 평가 결과가 true이면 (1) 실행문, false이면 종료
🔎 break문과 continue문
📍break문
➡️ for, while, do-while문을 중지할 때 사용 switch에서도 break 사용하여 switch문 종료
for(...) {
break;
}
while(...) {
break;
}
- 대개 break문은 if문과 같이 사용됨 → if문의 조건식에 따라 for/while문 종료할 때 사용
- 만약 반복문이 중첩되어 있을 경우 break 문은 가장 가까운 반복문만 종료하고 바깥쪽 반복문에는 영향을 끼치지 않음
레이블(label)문?
➡️ 일반적으로 중첩 루프에 사용, 중첩에서 break나 continue를 사용할 때 유용하게 사용 가능
📍continue문
➡️ 블록 내부에서 continue가 실행되면 for문의 증감문 혹은 while, do-while문의 조건식으로 이동하여 작동
➡️ break문처럼 보통 if문과 함께 사용, 조건을 만족하면 이후 코드를 실행하지 않고 continue 문 실행하여 다음 반복으로 넘어감
조건문에 이어서 반복문에 들어오니 머리가 터질 것 같다. 아니 벌써? 그래도 풀어가는 재미가 쏠쏠하다. 찾아서 해결하는 쾌감도 있고...... 내일은 좀 술술 풀렸으면 좋겠는데 아무래도 이루어질 것 같지는 않다. 오늘은 스터디에 들어가서 사람들이랑 캠스터디도 했다. 확실히 집중이 잘 된다. 다른 분들 열심히 하는 것보니까 나도 열심히 하고 싶다!!! 더 부지런히 움직여야지 오늘의 일기 끝.
'SEB_BE_45 > 공부 정리' 카테고리의 다른 글
08. [Java] 객체지향프로그래밍의 이해 / 20230421 (0) | 2023.04.21 |
---|---|
07. Java 기초 4 / 20230420 (0) | 2023.04.20 |
05. Java 기초 2 / 20230418 (0) | 2023.04.18 |
04. Java 기초 1 / 20230417 (1) | 2023.04.17 |
03 Git 기초/20230414 (0) | 2023.04.14 |