study/java

자바[JAVA] 스캐너(Scanner)

박허디 2024. 5. 31. 14:21

키보드로 입력받기 위해서는 Scanner라는 클래스를 이용할 수 있다.

 

자바에서 java.util 패키지 안에 Scanner 클래스가 있어서

사용하고 싶을땐 import 해주면 된다.

 import java.util.Scanner; // Scanner만 따로 불러도 되고
 
 import java.util.*; // 다 불러와도 되고

 

Scanner 클래스를 호출했으면

그 후엔 객체를 생성해 줘야 한다.

 

객체는 이런 식으로 생성할 수 있다.

// 변수명은 마음대로 하는데 보통
// sn, in 등을 많이 한다고 한다

Scanner sn = new Scanner(System.in);

 

여기서 new Scanner안에 System.in은 사용자로부터 입력을 받기 위한 입력 스트림이다

때문에 Scanner 뿐 아니라 다른 입력 방식들도 사용자로부터 입력을 받으려면 System.in을 입력해 주면 된다.

 

자바에서 Scanner 입력 메서드는 아래와 같은 종류들이 있다.

in.nextByte()		// byte 형 입력 및 리턴
in.nextShort()		// short 형 입력 및 리턴
in.nextInt()		// int 형 입력 및 리턴
in.nextLong()		// long 형 입력 및 리턴
 
in.nextFloat()		// float 형 입력 및 리턴
in.nextDouble()		// double 형 입력 및 리턴
 
in.nextBoolean()	// boolean 형 입력 및 리턴
 
in.next()		// String 형 입력 및 리턴(공백을 기준으로 한 단어를 읽음)
in.nextLine()		// String 형 입력 및 리턴 (개행을 기준으로 한 줄을 읽음)

 

실제로 이용하면 이런 식으로 작성하면 된다.

import java.util.Scanner;	// Scanner 클래스 호출
 
public class Main {
	public static void main(String[] args) {
 
		Scanner sn = new Scanner(System.in);	// Scanner 객체 생성
 
		byte A = sn.nextByte(); 		// byte 형 입력 및 리턴
		short B = sn.nextShort(); 		// short 형 입력 및 리턴
		int C = sn.nextInt(); 			// int 형 입력 및 리턴
		long D = sn.nextLong(); 		// long 형 입력 및 리턴
 
		float E = sn.nextFloat(); 		// float 형 입력 및 리턴
		double F = sn.nextDouble(); 	// double 형 입력 및 리턴
 
		boolean G = sn.nextBoolean(); 	// boolean 형 입력 및 리턴
 
		String H = sn.next(); 			// String 형 입력 및 리턴 (공백을 기준으로 한 단어를 읽음)
		String I = sn.nextLine(); 		// String 형 입력 및 리턴 (개행을 기준으로 한 줄을 읽음)
	}
 
}

'study > java' 카테고리의 다른 글

자바[JAVA] 조건문  (0) 2024.06.14
자바[JAVA] 삼항연산자  (0) 2024.06.10
자바[JAVA] charAt  (2) 2024.06.03
자바[JAVA] toCharArray()  (1) 2024.06.03
자바[JAVA] BufferedReader  (0) 2024.06.02