- Scanner 클래스란?
- 데이터 타입들을 Scanner의 메소드를 사용하여 입력받을 수 있다
- 사용 시 import 해와야 한다
- 공백 또는 줄바꿈을 기준으로 읽는다.
- 사용법
import java.util.Scanner; //scanner 클래스 호출
클래스_이름 객체_이름 = new 클래스_이름();
★대체로 객체이름은 in,input,sc,scan 4가지가 많이 쓰인다고한다)
Scanner in = new Scanner(System.in); // Scanner 객체 생성
❗생성 시 System.in 이 들어간다
❓System.in
: 사용자로부터 입력을 받기 위한 입력 스트림. 그러므로 다른 입력 방식들도 사용자로부터 입력을 받기위해서는 System.in이 들어가야한다. (세부내용은 링크 참조)
- 메소드를 이용하여 입력하기
import java.util.Scanner; // Scanner 클래스 호출
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in); // Scanner 객체 생성
byte a = in.nextByte(); // byte 형 입력 및 리턴
short b = in.nextShort(); // short 형 입력 및 리턴
int c = in.nextInt(); // int 형 입력 및 리턴
long d = in.nextLong(); // long 형 입력 및 리턴
float e = in.nextFloat(); // float 형 입력 및 리턴
double f = in.nextDouble(); // double 형 입력 및 리턴
boolean g = in.nextBoolean(); // boolean 형 입력 및 리턴
String h = in.next(); // String 형 입력 및 리턴 (공백을 기준으로 한 단어를 읽음)
String i = in.nextLine(); // String 형 입력 및 리턴 (개행을 기준으로 한 줄을 읽음)
}
}
보통 많이 쓰이는 것들은
nextInt()
nextDouble()
next()
nextLine()
❗char형 (문자)타입으로 받는 메소드는 따로 없다. string으로 받은 뒤 charAt()로 반환해야 한다.
✔next() VS nextLine()
- next()의 경우 공백 또는 줄바꿈까지만 읽는다.
- nextLine()은 그대로 한 줄을 읽는다. 공백 상관없이 줄바꿈까지 읽는다.
'☕JAVA > 🔎 공부 [JAVA]' 카테고리의 다른 글
[JAVA] length() 메소드 문자열의 길이 구하기 (0) | 2022.08.06 |
---|---|
[JAVA] 삼항연산자 (0) | 2022.08.06 |
[JAVA] 조건문 - If문 (0) | 2022.08.06 |
[JAVA] 연산자 / 연산자 우선순위 (0) | 2022.08.06 |
[JAVA] 반복문 - for문 / 이중for문 / for(A:B) , for Each (0) | 2022.08.06 |