본문 바로가기

개발/JAVA

[JAVA] #04. Scanner :: 표준 입력 클래스 사용 방법

Scanner scan = new Scanner(System.in); // 입력을 받을 수 있는 기능

 

import java.util.Scanner;

​

public class mainClass {

​

public static void main(String[] args) {

/*

입력: input -> 콘솔

출력: output -> 콘솔 text

System.out.println()

​

입력 -> 저장해 놓을 공간(변수)

*/

​

Scanner scan = new Scanner(System.in); // 입력을 받을 수 있는 기능

 

 

 Scanner 활용 방법

■ boolean형 입력 받기

// boolean(true/false) -> (ex) 체크박스일 경우

​

boolean b;

System.out.print("b = ");

b = scan.nextBoolean(); // true/false 입력 받음

​

System.out.println("b:" + b);

 

■ int (정수) 형 입력 받기

int number;

System.out.print("number = ");

number = scan.nextInt(); // 입력을 받아보자!

​

System.out.println("number:" + number);

 

double (실수) 형 입력 받기

사실, float는 잘 쓰지 않는다.

double d;

​

System.out.println("d = ");

d = scan.nextDouble();

​

System.out.println("d:" + d);

 

■ String 형 입력 받기

// String (문자열)

// next, nextline ( next를 더 많이 사용할 것을 권장 )

String str;

System.out.print("str = ");

str = scan.next();

System.out.println("str = " + str);

​

// ' ' == null (빈 문자)

 

 

 Scanner 클래스에서 next();와 nextLine(); 차이점

// scan.nextLine();

​

String _str;

System.out.print("_str = ");

_str = scan.next(); // nextline();으로 엔터 넘어가는 것을 막고 싶다면 => 엔터키값이 들어오는 곳에 한 번 더 넣어준다

System.out.println("_str = " + _str);

 

▶ next()
공백을 기준으로 입력을 받는다. 즉, 띄어쓰기(=\\s)을 기준으로 입력을 받는다. 

즉, 문자 또는 문자열의 공백을 기준으로 한 단어 혹은 한 문자씩 입력받는다.

 

nextLine()
한 라인을 기준으로 입력을 받는다. 즉, 개행문자(=줄넘김)(=\n)을 기준으로 입력을 받는다.

 

scan.close(); 은 원래 해주는게 맞긴 한데, 보편적으로 잘 close 안 하는 듯 하다.