각종 SNS나 카카오톡 메세지를 입력하고 전송하는 것과 같은 화면으로부터 특정 데이터를 입력받아야 하는 경우가 발생합니다. 이러한 상황에서 각각의 프로그래밍 언어에는 화면으로부터 입력을 받기 위한 방법이 존재합니다. 예를들어 C언어에는 scanf() 함수를 통해 입력을 받을 수 있으며, 지금부터 알아볼 Java에서는 스캐너(Scanner)클래스를 통해 화면으로부터 정보를 입력받을 수 있습니다.
📌Scanner 클래스의 특징
- 문자열, 정수와 같은 기본적인 데이터 타입을 입력받을 수 있고, 메서드를 통해 원하는 타입으로 변환이 가능하다.
- Scanner 클래스는 java.util 패키지 안에 존재하기 때문에 사용하기 위해서는 import해주어야 한다.
- Scanner의 메서드들은 공백과 개행 기준으로 읽기 때문에 사용자가 정의할 수 있다.
📌Scanner 클래스 사용해보기
이제 Scanner클래스를 직접 호출하고 사용해보도록 하겠습니다. 아래 순서에 따라 진행하면 됩니다.
📌Scanner 클래스 호출
//Scanner 클래스를 사용하기 위해서는 java.util의 Scanner클래스를 별도 호출해주어야 한다.
import java.util.Scanner;
📌Scanner 클래스 객체 생성
//Scanner 객체 생성
Scanner sc = new Scanner(System.in);
//Scanner 객체를 생성한 후 System.in을 파라미터로 넣어주어야한다.
//System.in은 사용자로부터 입력을 받기위한 스트림이다.
📌자주 쓰이는 Scanner 클래스의 메서드
메서드 | 기능 |
next() | 띄어쓰기 전까지의 String을 읽음 |
nextLine() | 띄어쓰기 포함한 전체 String을 읽음 |
nextInt() | 정수(int)를 읽음 |
nextBoolean() | boolean을 읽음 |
📌Scanner 메서드를 사용한 예제 - next()
Scanner sc = new Scanner(System.in);
String str = sc.next();
System.out.println(str);
//입력 : moooonstar blog
//결과 : moooonstar
📌Scanner 메서드를 사용한 예제 - nextLine()
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
System.out.println(str);
//입력 : moooonstar blog
//결과 : moooonstar blog
📌Scanner 메서드를 사용한 예제 - nextInt()
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
System.out.println(num);
//입력 : 10
//결과 : 10
'Languages > Java' 카테고리의 다른 글
[Java]문자열 내 특정 문자 포함 여부 확인 및 위치 찾기(contains, indexOf) (3) | 2023.05.07 |
---|---|
[Java]배열을 원하는 크기대로 분할하는 방법(Guava : 구글 오픈소스 라이브러리) (2) | 2023.05.06 |
[Java]문자열을 정수형으로 변경하는 방법(자료형 Casting) (0) | 2023.05.01 |
[Java]컬렉션(Collection)의 개념과 구조 파악 하기 (4) | 2023.03.29 |
[Java]JSON과 GSON의 관계는 무엇인가? (5) | 2023.03.22 |