자바에서 입력하는 방법에는 System.in.read() 함수로 입력받는 방법이 있습니다.
변수를 생성해 주고 해당 변수에 함수를 대입해 주면 해당 변수에 입력이 받아집니다.
프로그램을 실행하고 값을 입력한 뒤에 Enter을 누르면 입력이 완료됩니다.
System.in.read() 함수로 입력을 받게 되면 키코드를 하나씩 읽기 때문에 2개 이상이 조합된 한글(2byte)은 읽을 수가 없고 문자 하나씩만 입력받을 수 있기 때문에 문자열은 입력받을 수 없습니다.
또한 System.in.read() 함수를 사용하기 위해선 main 함수에 throws IOException을 추가로 적어주어 System.in.read() 함수에 대한 예외 처리를 해줘야 합니다.
이러한 System.in.read() 함수의 단점을 보완하기 위해 Java에서는 Scanner 클래스를 활용해 입력을 받게 됩니다.
우선 Scanner 클래스가 포함된 모듈을 import 해주고 자료형이 Scanner 클래스인 변수를 생성해 줍니다. 이후 new Scanner(System.in)을 입력해 주면서 시스템의 입력 장치로부터 읽는 Scanner를 생성합니다.
이후 입력을 받을 때는 Scanner 클래스 안에 있는 메서드들로 입력을 받으면 됩니다.
next() 함수는 공백 이전까지 입력된 문자열을 입력받는 함수입니다.
nextInt() 함수는 공백 이전까지 입력된 정수를 입력받는 함수입니다.
nextDouble() 함수는 공백 이전까지 입력된 실수를 입력받는 함수입니다.
nextLine() 함수는 Enter 키를 입력하기 전까지 입력한 라인 전체 (공백 포함)를 입력받는 함수입니다.
Scanner를 사용하여 입력을 받으면 꼭 마지막에 close() 함수를 사용하여 Scanner 클래스를 닫아줘야 합니다.
'프로그래밍 언어 > 자바 (Java)' 카테고리의 다른 글
[자바(Java) 공부하기] 10. 배열 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.10 |
---|---|
[자바(Java) 공부하기] 9. 반복문 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.09 |
[자바(Java) 공부하기] 8. 조건문 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.08 |
[자바(Java) 공부하기] 7. 연산자 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.07 |
[자바(Java) 공부하기] 5. 문자열 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.05 |
[자바(Java) 공부하기] 4. 형변환 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.04 |
[자바(Java) 공부하기] 3. 변수와 자료형 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.04 |
[자바(Java) 공부하기] 2. 출력하기 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.03 |