나의 IT일지
Scanner 클래스 본문
자바에서는 개발자들이 개발할 때 사용하기 위한 기본 기능인 API가 구현되어 있으며, import를 통해 클래스를 호출해서 해당 클래스의 메서드를 사용한다.
특히 java.util 패키지는 프로그램 개발에서 자주 사용하는 패키지이기에, 사용자의 편리성을 위해 구현된 클래스들이 모여있어서 자주 사용한다.
클래스 | 용도 |
Calendar | 운영체제의 날짜, 시간의 정보를 수집 |
Date | 특정 시점의 날짜와 시간 정보를 저장 |
Scanner | 문자 데이터를 입력 |
BigDecimal | 정확한 소수점 연산 |
StringTokenizer | 문자열을 구분 문자열 기준으로 분리 |
Scanner 클래스
자바에서는 데이터를 입력하기 위해서는 Scanner클래스를 사용해야 한다. Scanner클래스란 문자 파일이나 입력 스트림(System.in)을 통해 입력된 문자열을 줄 단위로 쉽게 읽도록 하기 위해서 java.util패키지에서 제공하는 클래스로, Scanner클래스를 통해 입력받은 내용은 출력 스트림(System.out)을 통해 출력할 수 있다.
- nextBoolean : 논리형 데이터 값을 입력
- nextByte : byte타입 데이터값을 입력
- nextDouble : double타입 데이터 값을 입력
- nextFloat : float타입 데이터값을 입력
- nextInt : int타입 데이터으로 입력
- nextLine : enterkey 입력 전까지 문자열로 입력
- next : 공백 전까지 문자열로 입력
package pack0523;
import java.util.Scanner;
public class Code1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("이름 입력하기 : ");
String name = sc.nextLine();
System.out.println(name+"님 환영합니다.");
}
}
Scanner클래스는 객체를 생성할 때, 생성자에 "InputStream클래스"의 객체(System.in)를 매개변수로 지정하게 되면, 데이터를 직접 입력할 수 있는 Scanner객체가 생성이 된다.
반면에 생성자에 "FileInputStream클래스"의 객체를 매개변수로 지정하면, 파일에 있는 데이터를 줄 별로 토큰으로 나눠서 IDE에 입력, 저장하게 되며, 파일의 내용을 출력할 수 있는 Scanner객체가 생성된다.
package pack0523;
import java.io.FileInputStream;
import java.util.Scanner;
public class Code {
public static void main(String[] args) {
try{
FileInputStream fls = new FileInputStream("src//pack0523//sample.txt");
Scanner s = new Scanner(fls);
while(s.hasNext()) { //파일의 토큰이 있을 경우 참
System.out.println(s.nextLine()); //파일의 토큰을 출력
}
}
catch(Exception e){
e.printStackTrace();
}
}
}
src//pack0523//sample.txt | 출력 결과 |
'프로그래밍 언어 > Java' 카테고리의 다른 글
Format 클래스 (0) | 2023.05.24 |
---|---|
기타 API 클래스 (0) | 2023.05.23 |
LocalDateTime 클래스 (0) | 2023.05.19 |
Calendar클래스, Date클래스 (0) | 2023.05.18 |
StringTokenizer클래스, Random클래스 (0) | 2023.05.17 |
Comments