[Java] 조건문과 반복문
2024. 3. 8. 06:12ㆍBE/Java
소스코드가 기본적으로 위에서 아래로 실행되는데 실행 흐름을 제어할 수도 있다.
조건문과 반복문을 통해 흐름 제어가 가능하다.
조건문
if문
조건식 true, false에 따라 실행 흐름을 통제할 수 있다.
조건식 true이면 조건식 블록이 실행된다. else문이 있는 경우 조건식이 false일 때 else 블록이 실행된다.
else문에 조건식을 추가하고 싶다면 else if문을 사용하면 된다.
public class Example {
public static void main (String[] args) {
int score = 90;
if (score >= 100) {
System.out.println("만점");
} else if (score >= 90) {
System.out.println("우수");
}
else {
System.out.println(score);
}
}
}
switch문
정수 타입, String 타입 변수 값에 따라 실행 흐름을 제어할 때 사용할 수 있다.
변수 값과 동일한 case문부터 실행한다. 동일한 값이 없는 경우 default문이 실행된다.
각 case 별로 break 문을 추가하지 않는 경우 해당 case만 실행되는 것이 아니라 다음 case문도 계속해서 순차적으로 실행되기 때문에 추가하는 것이 좋다.
public class Example {
public static void main (String[] args) {
int score = 90;
switch (score) {
case 100:
System.out.println("만점");
break;
case 90:
System.out.println("우수");
break;
default:
System.out.println(score);
}
}
}
반복문
동일한 코드를 n번 반복해서 실행하고자 할 때 사용한다.
for문
반복 횟수를 알고 있을 때 사용하는 편이다.
public class Example {
public static void main (String[] args) {
int sum = 0;
for (int i=0; i<5; i++) {
sum += i;
}
System.out.println(sum);
}
}
while문
반복 횟수를 모를 때 사용하는 편이다.
public class Example {
public static void main (String[] args) {
int i = 1;
while (i <= 10) {
System.out.println(i);
i++;
}
}
}
do-while문
반복 횟수를 모르지만 적어도 한 번 실행해야 할 때 사용하는 편이다.
import java.util.Scanner;
public class Example {
public static void main (String[] args) {
Scanner scanner = new Scanner(System.in);
String inputString;
do {
System.out.print(">");
inputString = scanner.nextLine();
} while (!inputString.equals("q"));
System.out.print("프로그램 종료");
}
}
break문
반복문이나 switch문을 종료하기 위해 사용한다.
반복문이 중첩된 경우 최상위 반복문까지 종료시키려면 반복문에 label을 붙이고 break [lable 이름]; 하면 된다.
public class Example {
public static void main (String[] args) {
Outter: for (int i=0; i<5; i++) {
for (int j=0; j<5; j++) {
if (i==1) {
break Outter;
}
System.out.println("i : " + i + ", j : " + j);
}
}
}
}
continue문
반복문에서 다음 조건식으로 실행 흐름을 이동시킬 용도로 사용한다.
public class Example {
public static void main (String[] args) {
for (int i=1; i<=10;i++) {
if (i % 2 == 1) continue;
System.out.println(i);
}
}
}
728x90
'BE > Java' 카테고리의 다른 글
[Java] 객체 지향 프로그래밍 이해하기 (0) | 2024.03.09 |
---|---|
[Java] 참조 타입에 대해서 (0) | 2024.03.08 |
[Java] 연산에 대해 (0) | 2024.03.07 |
[Java] 타입 변환 (0) | 2024.03.07 |
[Java] 데이터 타입 (0) | 2024.03.07 |