본문 바로가기
개발일지

개발일지 7일차 -Switch case & for반복문-

by 태운콩즙 2023. 12. 4.
728x90
반응형

오늘은 Switch  case 와 for 반복문에 대하여 배웠다

 

두가지의 가장 큰 차이점은 Switch case 에는 조건 변수가 들어가야 하고 for 반복문 반복변수가 들어간다

 

둘중 어떤걸 써도 상관없지 않느냐? 라고 생각할수도 있지만

Switch case 는 if문에 더 가깝다

문법을 비교 해보면

 

<if문>

ch04_if;

import java.util.Scanner;

public class Ex08_ifExample {

	public static void main(String[] args) {
		/**
		 * 서로 다른 정수 3개를 입력받아서 가장 큰 정수 출력하기
		 * (같은 숫자는 입력하지 않는다고 가정
		 * 첫번째 숫자:
		 * 두번쨰 숫자:
		 * 세번째 숫자:
		 * 
		 * 출력 예
		 * 가장 큰 숫자는 00입니다
		 */
		
		Scanner scanner = new Scanner(System.in);
		int num1 =0;
		int num2 =0;
		int num3 =0;
		System.out.print("첫번째 숫자: ");
		num1 = scanner.nextInt();
		System.out.print("두번째 숫자: ");
		num2 = scanner.nextInt();
		System.out.print("세번째 숫자: ");
		num3 = scanner.nextInt();
		
		if(num1 > num2 && num1 >num3) {
			System.out.println("가장 큰 수는"+ num1 + "입나다");
		}else if(num2> num1 && num2> num3) {
			System.out.println("가장 큰 수는 " + num2 + "입니다");
		}else {
			System.out.println("가장 큰 수는" + num3 + "입니다");
		}
	
		
	}

}

 

<Switch case>

package ch05_SwitchCase;

import java.util.Scanner;

public class Ex02_SwitchCase {
    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        System.out.print("단어를 입력하세요: ");

        String word = scanner.next();
        switch (word){
            case "desk":
                System.out.println("책상입니다.");
                break;
            case "chair":
                System.out.println("의자입니다.");
                break;
            case "monitor":
                System.out.println("모니터입니다.");
                break;
            case "mouse":
                System.out.println("마우스입니다.");
                break;
            default:
                System.out.println("사전에 없는 단어입니다");
                break;
        }



    }
}

 

두가지를 비교해보면 공통점은 각각 조건문을 충족할때 출력이 된다는것이다

 

그에 반면에 for문은

package ch06_for;

public class Ex01_ForBasic {
    public static void main(String[] args) {
        for (int i = 0; i< 4; i ++){
            System.out.println("i = " + i);
        }// 0~4 출력
        // for문 은 식에 따라서 차이가 크다
        for (int i = 0; i <=4; i++){
            System.out.println("i = " + i);
        }

        // 반복변수 초기값이 조건을 만족하지 않는다면
        for (int i = 10; i <=4; i++){
            System.out.println("보이나요?");
            System.out.println("i = " + i);
    }

        //반복문 종료 후에도 반복 변수를 사용하려면
        int j = 0;
        for (j = 0; j < 3; j++) {
            System.out.println("j = " + j);
        }
        System.out.println("반복문 종료 후 j= " +j);

        }
}

조건식에 부합하게 되면 작동을 중지하고 출력을 하게된다

 

for문과 Switch case의 가장 큰 차이점은

 

for문은 조건식과 조건문이 충족이 되면 중단하지만

Switch case 는 break라는 명령어가 있어야만 중단이 된다

 

for문은 초기 조건문과 조건식 을 사용하고 증감문을 사용할수있는 반면에

Switch case 처음 지정한 변수와 비교했을때 맞는것으로 출력이 되기때문에

단순 비교에 적합하다

 

 

 

728x90
반응형