본문 바로가기
Java

자바(Java)의 switch 조건문 , 반복문 while

by 임혁진 2024. 10. 22.

조건문: switch 문과 반복문: while 문, 배열 요소 옮기기 및 자리 바꾸기

1. switch

switch 문은 복합 if 문의 복잡성을 해결하기 위한 다중 분기 조건문입니다. 주로 정확한 값에 따라 분기해야 할 때 유용합니다. 범위가 아닌 특정 값을 조건으로 사용해야 하며, 조건식의 결과로는 int, String, enum 타입의 값을 사용할 수 있습니다.

switch 문 기본 구조:

int number = 2;
switch (number) {
    case 1:
        System.out.println("Number is 1");
        break;
    case 2:
        System.out.println("Number is 2");
        break;
    case 3:
        System.out.println("Number is 3");
        break;
    default:
        System.out.println("Number is not 1, 2, or 3");
        break;
}
  • break: break 문이 없으면 다음 case들도 모두 실행되므로, 각 case 뒤에 break를 사용하여 실행을 멈추는 것이 중요합니다.
  • default: 기본적으로 실행되는 블록이며, if-else의 else와 유사한 역할을 합니다.

switch 문 특징:

  • 범위 대신 특정 값: switch는 범위를 조건으로 사용할 수 없고, 특정 값만 사용할 수 있습니다.
  • 상수만 가능: case 뒤에는 상수만 올 수 있으며, 변수를 사용할 수 없습니다.

2. while

while 문은 조건식이 참인 동안 계속해서 반복 실행되는 제어문입니다. 조건식은 반드시 boolean 값을 반환해야 합니다.

 

while 문 기본 구조:

int i = 0;
while (i < 5) {
    System.out.println("i is " + i);
    i++;  // 조건식이 거짓이 될 때까지 i를 증가시킴
}

 

  • 조건식: 조건식이 참일 때만 블록 안의 코드를 반복합니다.
  • 무한 루프: while(true)는 무한 반복을 의미하며, 반드시 탈출구문이 있어야 합니다. 탈출구문이 없다면 무한 루프에 빠지게 됩니다.

무한 루프 예시:

while (true) {
    System.out.println("무한 반복 중...");
    if (조건) {   // 조건에 따라 탈출
        break;
    }
}

 

3. 배열 요소 옮기기 및 자리 바꾸기

배열의 요소를 다른 배열로 복사하거나, 자리 바꾸기는 배열을 다루는 기본적인 기술입니다.

 

배열 옮겨 담기 (복사하기):

int[] originalArray = {1, 2, 3, 4, 5};
int[] newArray = new int[originalArray.length];

for (int i = 0; i < originalArray.length; i++) {
    newArray[i] = originalArray[i];  // 요소 복사
}

 

배열 자리 바꾸기:

배열 내에서 두 값의 위치를 바꾸는 것은 간단한 임시 변수를 사용하여 해결할 수 있습니다.

int[] numbers = {1, 2, 3, 4};
int temp = numbers[0];  // 임시 변수에 첫 번째 요소 저장
numbers[0] = numbers[3];  // 마지막 요소를 첫 번째 위치로
numbers[3] = temp;  // 첫 번째 요소를 마지막 위치로 이동

이 방법을 사용하면 배열 내의 요소 위치를 쉽게 교환할 수 있습니다.