728x90
반응형
package Advanced_Chap_2;

import java.util.Scanner;
public class _2_3_Switch {
    public static void main(String[] args) {

//        Scanner scanner = new Scanner(System.in);
//        System.out.println("오늘은 몇요일? ");
//        String name = scanner.nextLine();
//
//        System.out.println(name);
//
//
//    String day = "Friday";
//
//    switch(day.toLowerCase()){
//        case "sunday":
//            System.out.println("It's Sunday!");
//            break;
//        case "Monday":
//            System.out.println("It's Monday!");
//            break;
//        case "Tuesday":
//            System.out.println("It's Monday!");
//            break;
//        case "Wednesday":
//            System.out.println("It's Monday!");
//            break;
//        case "Thursday":
//            System.out.println("It's Monday!");
//            break;
//        case "Friday":
//            System.out.println("It's Monday!");
//            break;
//        case "Saturday":
//            System.out.println("It's Monday!");
//            break;
//    }
    //  위 코드가 실행이 되지 않은 이유 2가지
    //
    //  ***
    //  1.    String name = scanner.nextLine();
    //        System.out.println("오늘은 몇요일? ");
    //        System.out.println 이 scanner.nextLine();보다 먼저 와야한다


    //  2. *** Switch 에 대,소문자를 통일 시켜줘야 한다. 자바는 대소문자가 중요!!!! ***




        Scanner scanner = new Scanner(System.in);
        System.out.println("오늘은 몇요일? ");
        String day = scanner.nextLine().toLowerCase();

        switch(day){
            case "sunday":
                System.out.println("It's Sunday!");
                break;
            case "monday":
                System.out.println("It's Monday!");
                break;
            case "tuesday":
                System.out.println("It's tuesday!");
                break;
            case "wednesday":
                System.out.println("It's wednesday!");
                break;
            case "thursday":
                System.out.println("It's thursday!");
                break;
            case "friday":
                System.out.println("It's friday!");
                break;
            case "saturday":
                System.out.println("It's saturday!");
                break;
        }



    }

}

 

Scanner.nextLine() 은 클래스의 메서드이며, 자바에서 메서드는 특정한 작업을 수행하기 위해 정의된 코드의 블록이다. 메서드는 클래스나 객체에 속해 있으며, 특정 작업을 수행하기 위해 호출된다. 따라서 Scanner 객체에 속해 있으며 Scanner 객체를 사용하여 사용자로부터 입력을 받는다. Scanner.nextLine()은 자바에서 사용자로부터 여러줄의 문자열을 입력받을 때 주로 사용된다.

 

사용자가 엔터 키를 누르기 전까지 입력된 모든문자열을 읽어온다.

1.  입력 대기 상태 : 사용자가 입력을 마치고 엔터 키를 누를 때까지 프로그램이 입력을 기다리는 상태로 전환

2. 공백 문자도 읽음 : monday tuesday 와 같이 공백 문자를 포함하여 한 줄의 모든 문자열을 읽는다.

3. 엔터 키 전까지의 문자열을 읽음 : 엔터 키를 누르기 전까지 입력된 모든 문자열을 읽는다.

4. 줄 바꿈 문자 제거: 사용자가 입력한 문자열에는 엔터 키에 해당하는 줄 바꿈 문자도 포함된다. 하지만!  'nextLine()'은 이를 자동으로 제거하여 반환된 문자열에는 줄 바꿈 문자가 포함되지 않는다.

 

 

반응형