Java

[Java] 자바의 조건문과 반복문의 이해와 활용 (for, while, if, swtich)

3o14 2023. 7. 16. 14:29
728x90
반응형

 

자바의 조건문과 반복문의 이해와 활용 if / switch / for / while

 

안녕하세요 오늘은 자바의 조건문, 반복문에 대해서 알아볼게요 다른 언어에서도 다 비슷하게 사용해서 크게 다를 점은 없지만 사실 이 중에서 적고 싶은 흥미로운 내용이 있어서 이번 포스팅을 작성하게 되었어요 🙃

 

자바에서는 조건문과 반복문을 사용하여 프로그램의 흐름을 제어할 수 있습니다. 이 블로그 포스트에서는 자바의 조건문과 반복문인 if문, switch문, for문, while문에 대해 설명하고, 각각의 사용법과 예제 코드를 통해 실제 활용 방법을 알아보겠습니다. 🧐

 

 


🍊 조건문

자바에서 조건문은 프로그램의 특정 조건에 따라 다른 코드 블록을 실행하도록 하는 구문입니다. 자바에서는 주로 if문switch을 사용하여 조건문을 작성합니다.

 

📍 if 문

  • if문은 주어진 조건식의 결과에 따라 프로그램의 흐름을 분기하는데 사용됩니다.
  • 조건식이 참(true)인 경우에만 해당 블록의 코드가 실행됩니다.

 

사용법

if (조건) {
    // 조건이 참인 경우 실행되는 코드
}

 

사용 예제

int num = 10;

if (num > 0) {
    System.out.println("양수입니다.");
} else if (num < 0) {
    System.out.println("음수입니다.");
} else {
    System.out.println("0입니다.");
}

 

 

📍 switch 문

  • switch문은 주어진 표현식의 결과에 따라 다양한 경우를 분기하여 코드를 실행합니다.
  • 표현식의 결과와 case문의 값이 일치하는 경우 해당 case문의 코드가 실행됩니다.
  • break문을 사용하여 각 case문의 실행을 종료해야 합니다.

 

사용법

switch (변수 또는 식) {
    case 값1:
        // 값1과 일치하는 경우 실행되는 코드
        break;
    case 값2:
        // 값2와 일치하는 경우 실행되는 코드
        break;
    // 추가적인 case 블록들
    default:
        // 어떤 case에도 일치하지 않는 경우 실행되는 코드
}

 

사용 예제

int day = 3;
String dayOfWeek;

switch (day) {
    case 1:
        dayOfWeek = "월요일";
        break;
    case 2:
        dayOfWeek = "화요일";
        break;
    case 3:
        dayOfWeek = "수요일";
        break;
    default:
        dayOfWeek = "알 수 없는 요일";
}
System.out.println("오늘은 " + dayOfWeek + "입니다.");

 

 

 


🍊 반복문

자바에서 반복문은 프로그램에서 특정 코드 블록을 여러 실행하는 사용되는 구문입니다. 반복문은 특정 조건이 참인 동안 코드를 반복해서 실행하거나, 주어진 횟수만큼 코드를 반복해서 실행하는 가지 주요한 형태로 사용됩니다. 자바에서는 for, while, do-while문을 사용하여 반복문을 작성할 있습니다.

 

📍 for 문

  • for문은 초기화, 조건식, 증감식을 사용하여 반복적인 작업을 수행합니다.
  • 조건식이 참인 경우에만 해당 블록의 코드가 반복 실행됩니다.

 

사용법

for (초기화; 조건; 증감) {
    // 실행될 코드
}

 

사용 예제

for (int i = 1; i <= 5; i++) {
    System.out.println("반복문 실행: " + i);
}

 

 

🎯 Mini Quiz.

아래 두 가지 방법 중 어느 것이 더 빠를까요?

for (int i = 0; i < 100; i++) {
    //
}
		
for (int i = 100; i > 0; i--) {
    //
}

 

정답은 

 

더보기

정답. 2번이 더 빠릅니다.

 

for문에서는 조건 부분이 중요한 역할을 하는데, 조건 부분은 for 반복할 때마다 매번 if문을 실행하는 것과 같습니다. 1번보다 2번이 빠른 이유는 조건부에서 if문으로 비교하는 대상이 0이기 때문에 훨씬 빠른 연산을 수행할 수 있는 것입니다. 1번과 같이 100보다 작은지를 판별하는 것보다 0보다 큰지를 판별하는 것이 빠르게 수행되기 때문에 2번이 더 빠릅니다.

 

혹자는 더하기보다 빼기의 연산이 더 복잡하기 때문에 1번이 더 빠르다고 할 수도 있습니다. 이러한 의견은 꽤나 합리적인데 컴퓨터에서 음수를 다루기 위해서는 보수를 취해야 하기 때문이죠. 하지만 그러한 점들을 다 감안하고도 2번이 빠릅니다. 

 

 

사실 이 미니 퀴즈의 내용을 적고 싶어서 이번 포스팅을 작성하게 되었는데요. 아직 부족한 저한테는 이러한 것들이 무척 신선하고 새롭기 때문이에요! 컴퓨터에 대해 알면 알수록 재미있습니다 🤭

 

하지만 지금은 사실 컴파일러의 성능이 대폭 개선되어서 저 두 방법의 성능차이가 나는 경우는 거의 없다고 합니다. 그래도 알아두면 좋겠죠?

 

 

 

 

📍 while 문

  • while문은 주어진 조건식의 결과가 참인 동안 반복적인 작업을 수행합니다.
  • 조건식이 참인 경우에만 해당 블록의 코드가 반복 실행됩니다.

 

사용법

while (조건) {
    // 실행될 코드
}

 

사용 예제

int count = 1;
while (count <= 5) {
    System.out.println("반복문 실행: " + count);
    count++;
}

 

 


 

🍊 마무리

조건문과 반복문은 프로그램의 흐름을 유연하게 제어할 수 있는 기능을 제공합니다. if문과 switch문은 조건에 따라 분기하여 코드를 실행하고, for문과 while문은 반복 작업을 수행합니다. 이러한 제어문을 적절히 활용하여 다양한 상황에서 원하는 로직을 구현할 수 있습니다.

 

 

 

LIST