새소식

Java/제대로 파는 자바

[제대로 파는 자바 (Java)-by 얄코] 키보드 입력 받기

  • -

해당 게시물은 [제대로 파는 자바 (Java) - by 얄코]를 수강한 내용을 바탕으로 작성하였습니다.

 

 

 

import java.util.Scanner;

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

        //  IDE가 최상단에 import java.util.Scanner 자동 작성
        Scanner sc = new Scanner(System.in);
}

 

Scanner 변수명 = new Scanner(System.in);

Scanner : 키보드 입력이나 파일 등로부터 텍스트 값을 받아오기 위한 클래스

System.in : InputStream 의 인스턴스, 입력받은 값들의 흐름

 

 

 

 

next : 스페이스를 비롯한 공백 단위로 끊어서 (토큰으로) 문자열을 받음

nextLine : 줄바꿈 단위로 끊어서 문자열을 받음

 

import java.util.Scanner;

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

        //  IDE가 최상단에 import java.util.Scanner 자동 작성
        Scanner sc = new Scanner(System.in);


        String str1 = sc.next();
        String str2 = sc.next();
        String str3 = sc.nextLine();

        System.out.println("str1: " + str1);
        System.out.println("str2: " + str2);
        System.out.println("str3: " + str3);
    }
}

 

 

 

 

 next자료형()

import java.util.Scanner;

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

        Scanner sc = new Scanner(System.in);

        boolean bool = sc.nextBoolean();
        int intNum = sc.nextInt();
        double dblNum = sc.nextDouble();
        // 🧪 기타 next~ 메서드들 확인해 볼 것

        System.out.println("bool: " + bool);
        System.out.println("intNum: " + intNum);
        System.out.println("dblNum: " + dblNum);
    }
}

 

 

 

 

hasNext자료형() : 다음 입력값이 특정 자료형으로 읽힐 수 있는지 확인하여 불리언값 반환

close() : 스캐너의 사용이 끝나면 os자원 반환. 파일 등으로부터 읽어오는데 사용시 필수.

import java.util.Scanner;

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

        Scanner sc = new Scanner(System.in);

        System.out.println("불리언을 입력해주세요.");

        //  💡 다음 입력값이 특정 자료형으로 읽힐 수 있는지 확인
        while (sc.hasNextBoolean()) {
            //  💡 대소문자 무관 비교
            System.out.println("입력값: " + sc.nextBoolean());
        }

        //  ⭐ 스캐너의 사용이 끝나면 OS자원을 반환
        //  파일 등으로부터 읽어오는데 사용시 필수
        sc.close();
    }
}

 

 

 

 

 hasNext()

 hasNextLine()

import java.util.Scanner;

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

        Scanner sc = new Scanner(System.in);

        System.out.println("단어를 입력해주세요.");

        while (sc.hasNext()) {
            String nextWord = sc.next();
            if (nextWord.equalsIgnoreCase("quit")) break;
            System.out.println("입력값: " + nextWord);
        }
        

        System.out.println("문장을 입력해주세요.");

        while (sc.hasNextLine()) {
            String nextSentence = sc.nextLine();
            if (nextSentence.equalsIgnoreCase("quit")) break;
            System.out.println("입력값: " + nextSentence);
        }

        sc.close();
    }
}

 

 

 

 

import java.util.Scanner;

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

        Scanner sc = new Scanner(System.in);

        while (sc.hasNextInt()) {
            int repeatCount = sc.nextInt();

            //  ⚠️ nextInt를 아래에서 바로 사용하면 루프마다 받음
            //  repeatCount 변수에 담은 이유
            for (int i = 0; i < repeatCount; i++) {
                //  💡 print (ln이 붙지 않은) : 같은 줄에 이어 출력
                System.out.print("호우 ");
            }
            System.out.println("");
        }

        sc.close();
    }
}

 

 

 

import java.util.Scanner;

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

        Scanner sc = new Scanner(System.in);


        //  문자열 바로 입력하여 사용하기

        String [] strInputs = new String [5];

        for (int i = 0; i < strInputs.length; i++) {
            strInputs[i] = sc.nextLine();
        }

        sc.close();

        for (String str : strInputs) {
            System.out.println(str);
        }
    }
}

 

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.