Scanner 상세 설명
기본 사용법
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// import
import java.util.Scanner;
// scanner 객체 생성
Scanner scanner = new Scanner(System.in)
// 자료형에 따른 변수 타입과 메서드
byte b = scanner.nextByte(); // byte 형
short s = scanner.nextShort(); // short 형
int i = scanner.nextInt(); // int 형
long l = scanner.nextLong(); // long 형
float f = scanner.nextFloat(); // float 형
double d = scanner.nextDouble(); // double 형
boolean bl = scanner.nextBoolean(); // boolean 형
String st1 = scanner.next(); // String 형
String st2 = scanner.nextLine(); // String 형
scanner.next()와 scanner.nextLine()의 차이
scanner.next() : 공백을 기준으로 한 단어를 읽음
scanner.nextLine() : 개행을 기준으로 한 줄을 읽음
(1) scanner.next() : 공백을 기준으로 한 단어를 읽음
1
2
3
4
5
6
7
8
9
// scanner.next()
String st1 = scanner.next();
System.out.println(st1);
# 입력
// Hello world! It's a test text.
# 출력
// Hello
(2) scanner.nextLine() : 개행을 기준으로 한 줄을 읽음
1
2
3
4
5
6
7
8
9
10
// scanner.nextLine()
String st2 = scanner.nextLine();
System.out.println(st2);
# 입력
// Hello World! It's a test text.
// This is a second line.
# 출력
// Hello World! It's a test text.
응용
삼항연산자와 함께 응용하여 상황에 따라 변수에 저장되는 값을 바꿀 수 있다.
1
2
System.out.println("alg 알고리즘을 사용하시겠습니까? (Y/N)");
String userName = sc.next().charAt(0) == ('Y' | 'y') ? "--alg" : "";
Reference
Java의 정석 (남궁성)