일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 델
- 미분 방정식
- 소행성
- Asteroid RL
- 자료형
- auto-encoder
- 이진탐색트리
- java
- 계단 오르기
- dictionary
- 백트래킹
- 딥러닝
- 벡터 해석
- BST
- 선적분
- 피보나치 수열
- 딕셔너리
- 함수
- 회로이론
- 최단 경로
- cURL
- Class
- 파이썬
- 신경망
- 자바
- 벡터해석
- 2P1L
- 코드업
- 강화학습
- Python
- Today
- Total
Zeta Oph's Study
[Java - 기초 문법] 06. 반복문 : while문 & for문 & for each문 본문
https://crane206265.tistory.com/60
[Java - 기초 문법] 05. 조건문 : if문 & switch문
https://crane206265.tistory.com/59 [Java - 기초 문법] 04. 형변환 (type conversion / type casting) https://crane206265.tistory.com/58 [Java - 기초 문법] 03. 문자열(String) https://crane206265.tistory.com/57 [Java - 기초 문법] 02. 자료형
crane206265.tistory.com
설날에는 해피 자바...ㅋㅋ
이 글에서는 Java의 반복문에 대해 알아보도록 하겠습니다.
while문
조건이 참이면 반복을 수행합니다. 구조는 아래와 같습니다.
while (condition) {
...
}
역시 조건(condition)에는 boolean 형이 들어갑니다. 즉, 조건에 true를 넣어버리면 무한루프를 만들 수 있습니다.
while (true) {
...
}
무한루프를 빠져나갈 방법, 또는 반복문을 중간에 탈출할 방법이 필요하겠죠. break를 사용하여 빠져나갈 수 있습니다. break가 실행되면 반복문이 얼마나 남아있던 관계없이 가장 가까운 반복문을 바로 탈출합니다. 아무 조건 없이 break가 실행되면 반복이 될 수 없기 때문에 보통은 if문과 함께 쓰이게 됩니다.
while (condition1) {
...
if (condition2) {
...
break;
}
}
저는 개인적으로 무한루프 안에 break를 넣어 반복문을 종료하는 방법을 즐겨 씁니다. 조건이 여러 개이거나 복잡할 때, 반복문 탈출과 함께 어떠한 작업을 수행하고 싶을 때 자주 사용하는 것 같습니다.
continue도 있습니다. 반복문 안의 남은 작업은 모두 건너뛰지만, 반복문을 종료하지는 않습니다. 즉, continue가 실행되면 다음 반복으로 바로 넘어갑니다. 마찬가지로 if문과 함께 자주 사용됩니다.
while (condition1) {
...
if (condition2) {
...
continue;
}
}
예제) 1에서 10까지 자연수 중 짝수만 출력하기
public class Test {
public static void main(String[] args) {
int i = 0;
while (i < 10) {
i += 1;
if (i%2 == 1) {
continue;
}
System.out.println(i);
}
}
}
TERMINAL
2
4
6
8
10
for문
for문은 while문과는 또 다른 반복문입니다. 초기값, 조건, 증가연산이 모두 for문 안에 들어가 있는 구조입니다.
for (init_val; condition; increase;) {
...
}
for문에서도 break와 continue를 사용할 수 있습니다. 방법과 역할은 동일하니 생략하겠습니다.
for문 자체도 자주 활용되지만, for문 안에 for문을 넣어 이중 for문을 만들면, 굉장히 많은 작업을 할 수 있습니다. 예를 들어, 다차원 배열에서 값을 하나씩 검사/추출하기 위해서는 그 차원에 맞는 다중 for문을 사용하는 것이 일반적입니다.
예제) 구구단
public class Test {
public static void main(String[] args) {
for (int i = 1; i < 10; i++) {
for (int j = 1; j < 10; j++) {
System.out.print(i*j+" ");
}
System.out.println("");
}
}
}
TERMINAL
1 2 3 4 5 6 7 8 9
2 4 6 8 10 12 14 16 18
3 6 9 12 15 18 21 24 27
4 8 12 16 20 24 28 32 36
5 10 15 20 25 30 35 40 45
6 12 18 24 30 36 42 48 54
7 14 21 28 35 42 49 56 63
8 16 24 32 40 48 56 64 72
9 18 27 36 45 54 63 72 81
for each문
for문을 for each문으로 활용할 수 있습니다. Java에서 for문은 C의 for문과 비슷하다면, for each문은 Python의 for문과 비슷하다고 할 수 있습니다. 반복을 돌릴 수 있는 객체(iterate)에서, 순서대로 뽑아 반복 변수(var)에 대입하여 반복문을 실행하는 구조입니다. 단, 이때 반복 변수의 자료형을 지정해주어야 합니다.
for (type var: iterate) {
...
}
예제에서는 배열을 사용할 것인데, 배열에 대해서는 나중에 다루도록 하겠습니다.
예제) one two three
public class Test {
public static void main(String[] args) {
String[] numbers = {"one", "two", "three"};
for(String num: numbers) {
System.out.print(num+" ");
}
}
}
TERMINAL
one two three
이렇게 해서 Java의 조건문, 반복문까지 모두 다루었습니다. 다음번에는 배열을 다룰 것 같습니다.
'프로그래밍 > Java' 카테고리의 다른 글
[Data Structure (Java)] OOP (객체 지향 프로그래밍) & Data Type (1) | 2024.03.20 |
---|---|
[Data Structure (Java)] Function (함수) (1) | 2024.03.18 |
[Java - 기초 문법] 05. 조건문 : if문 & switch문 (1) | 2024.01.26 |
[Java - 기초 문법] 04. 형변환 (type conversion / type casting) (2) | 2024.01.26 |
[Java - 기초 문법] 03. 문자열(String) (2) | 2024.01.26 |