프로그래밍에서 제어문은 코드의 흐름을 제어하여 원하는 작업을 효율적으로 수행할 수 있게 해주는 핵심 도구입니다.
이번 포스팅에서는 자바(Java)의 조건문과 반복문에 대해 알아보겠습니다.
1. 조건문 (선택 제어문) : 특정 조건에 따라 코드 실행 흐름 제어하기
조건문은 특정 조건을 만족할 때만 코드 블록이 실행되도록 제어하는 문법입니다. 프로그램 흐름을 참, 거짓 조건에 따라 여러 갈래로 나뉘어 실행하며, 자바에서 조건문으로 가장 많이 사용되는 구조는 if, if-else, switch입니다.
- if문 - 조건식이 참일 때 코드 블록을 실행
- if ( 조건식 ) { 실행 코드 } else if ( 조건식 ) { 실행코드 } else {위의 조건식이 모두 거짓일 때 실행}
int num1 = 1;
int num2 = 2;
if(num1 < num2) {
System.out.println("num1은 num2보다 작다.");
}
int var1 = 1 , var2 = 2;
if(var1 > var2) {
//조건이 참일 때
System.out.println("var1이 var2보다 크다.");
}else {
//조건이 거짓일 때
System.out.println("var1이 var2보다 작다.");
}
int n1 = 1, n2 = 20, n3 = 3, n4 = 4;
if (n1 > n2) {
System.out.println("n1이 n2보다 크다.");
}else if (n2 > n3) {
System.out.println("n2이 n3보다 크다.");
}else if (n3 > n4) {
System.out.println("n3이 n4보다 크다.");
}else {
System.out.println("n4가 가장 크다.");
}
- switch문 - 여러 값에 따라 코드 블록을 선택적으로 실행할 때 유용
- Switch ( 조건식 ) { case 값 : 값이 참일 때 실행 break; }
System.out.print("숫자 입력 : ");
Scanner sc = new Scanner(System.in);
int number = sc.nextInt();
System.out.println("입력한 숫자 : " + number);
switch(number % 2) {
case 0:
System.out.println("number는 짝수");
break;
case 1:
System.out.println("number는 홀수");
break;
}
2. 반복문: 반복 작업을 효율적으로 처리하기
반복문은 프로그래밍에서 동일한 명령을 일정 횟수만큼 반복해서 수행하도록 제어하는 문법입니다. 자바에서 제공하는 반복문은 for, while, do-while입니다.
- For 문 - 반복 횟수가 명확할 때 사용
- for(초기식 ; 조건식 ; 증감식) { 실행코드 }
// 1부터10까지 합
int sum = 0;
for(int k=1 ; k<=10 ; k++) {
//sum = sum + k;
sum += k;
}
System.out.println("1부터 10까지의 합: " +sum);
// 1부터 10까지 짝수합
int total = 0;
for(int k=1 ; k<=10 ; k++) {
if(k % 2 == 0) {
total += k;
}
}
System.out.println("1부터 10까지의 짝수 합: " +total);
// 구구단
for(int x=2 ; x<=9 ; x++) {
System.out.println(x + "단");
for(int y=1 ; y<=9 ; y++) {
int z = x * y;
System.out.println(x + " x " + y + " = " + z );
}
}
// 별삼각형
for(int start=10 ; start>=1 ; start-- ) {
for(int end=1 ; end<=start ; end++) {
System.out.print("☆");
}
System.out.println();
}
- while문 - 조건이 참인 동안 반복을 수행
- 초기식;
while ( 조건식 ) { 명령문 }
// 1 부터 10까지 합
int sum = 0;
int k = 1;
while(k<=10) {
sum += k;
k++;
}
System.out.println("1 부터 10까지의 합 : " + sum);
- do-while문 - 조건 검사 여부와 상관없이 최소 한 번은 실행
// do ~ while
int total = 0;
int j = 1;
do {
if(j%2==0) {
total += j;
}
j++;
}while(j <= 10);
System.out.println("1 부터 10까지의 짝수합 : " + total);
- break 문 - 반복문을 즉시 종료하고, 반복문 바깥으로 흐름을 이동
// break
int num = 1;
while(num <= 100){
if(num % 5 == 0 && num % 7 == 0) {
break; //반복문 탈출
}
num++;
}
System.out.println("5와 7의 최소공배수: " + num);
- continue 문 - 현재 반복을 건너뛰고, 다음 반복을 실행하도록 흐름을 제어
//continue
int tot = 0;
int i = 0;
while (i <= 10) {
i++;
if(i%2 == 1) {
continue;
}
tot += i;
}
System.out.println("1부터 10까지 짝수합: " + tot);
continue의 동작 과정
- i가 증가하며 조건 i % 2 == 1을 검사합니다.
- 조건이 true일 경우 continue를 만나 아래 코드를 건너뛰고 다음 반복으로 넘어갑니다.
- 짝수일 경우에만 tot에 값을 더합니다.
💡 효율적인 코드 작성 팁
조건문이 복잡해지면 else if 를 사용하거나, switch 를 고려하세요.
반복문에서 종료 조건(break)과 다음 반복으로 넘어가기(continue)를 적절히 사용해 코드를 간결하게 만드세요.
자바의 조건문과 반복문은 프로그래밍에서 필수적으로 사용되는 중요한 문법입니다.
각각의 구조를 제대로 이해하고 상황에 맞게 활용하면 코드의 효율성과 가독성을 높일 수 있습니다.
다음 JAVA 포스팅은 배열과 메서드에 대해 알아볼 예정입니다!
✔ 오늘 코드에서 복합연산자를 캐치하지 못했다면?
[JAVA] 변수와 연산자
안녕하세요!이번 포스팅에서는 프로그래밍 언어 Java의 기본 개념과 문법을 소개하려고 합니다.Java는 플랫폼 독립성과 강력한 객체지향 프로그래밍을 지원하며, 다양한 애플리케이션 개발에 사
dev-yeonwha.tistory.com
'Java' 카테고리의 다른 글
[JAVA] 디자인패턴 : 어댑터 패턴(Adapter Pattern) (0) | 2025.01.13 |
---|---|
[JAVA] 디자인패턴 : 싱글톤 패턴(Singleton Pattern) (0) | 2025.01.13 |
[JAVA] 디자인패턴 : 콜백(Callback) 패턴 알아보기 (0) | 2025.01.13 |
[OPP] 디자인 패턴이란? (1) | 2025.01.12 |
[JAVA] 변수와 연산자 (0) | 2025.01.03 |