Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 자료구조
- 코딩문제
- Spring
- 회고
- CS
- Entity
- Grafana
- 메서드
- 자바
- Java
- aop
- wil
- cs 공부)준비
- GIT
- 코딩
- 항해99
- 코딩공부
- 면접(java
- 99클럽
- Til
- 코딩테스트 준비
- ArrayList
- 배열
- 개발자 취업
- 프로그래머스
- 정렬 알고리즘(sort algorithm)
- HTML
- css
- github
- 이진 탐색(binary search)
Archives
- Today
- Total
hayu's 개발 일지
[TIL]240408 Scanner 클래스 본문
Scanner 클래스란?
- Scanner는 사용자로부터 입력을 받을 수 있도록 도와주는 것이다.
- 화면이나 파일, 문자열 등의 입력으로부터 문자를 읽어주는 클래스이다.
Scanner 특징
- java.util 패키지 내에 존재하여 import 을 통해 호출해야 한다.
- 정수(int)와 실수(double) 등의 기본적인 데이터타입 입력을 받기 위한 클래스다.
- 공백(띄어쓰기) 또는 개행(줄바꿈)을 기준으로 읽는다.
Scanner 사용순서
- import문 추가하기
- Scanner 객체 생성
- Scanner 객체 사용
- 닫아주기.
import java.util.Scanner; // java.util의 Scanner 클래스 import
// import java.util.*; // java.util에 있는 클래스 모두 import
public class Scanner_s1 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in); // Scanner 객체 생성
String str = scanner.next(); // 입력받은 문자열을 str에 저장
String name = scanner.next(); // 입력받은 문자열을 name에 저장
int age = scanner.nextInt(); // 입력받은 정수를 age에 저장
scanner.close(); // 닫아주기.
}
}
Scanner 메서드
토큰(Token) : 공백 문자(Spacebar), 탭(Tab), 개행(Enter) 등으로 구분되는 요소이다.
- next() : 토큰을 String 타입으로 반환한다.
- nextLine() : 한 줄("\n (Enter)"를 치기 전까지)을 읽고, "\n (Enter)"값이 제외된 부분만을 출력한다.(개행 기준)
- nextShort() : 토큰을 short 타입으로 반환한다.
- nextInt() : 토큰을 int 타입으로 반환한다.
- nextLong() : 토큰을 long 타입으로 반환한다.
- nextFloat() : 토큰을 float 타입으로 반환한다.
- nextDouble() : 토큰을 double 타입으로 반환한다.
- close() : scanner의 사용을 종료한다.
next()와 nextLine()의 차이
- Scanner 클래스에 String을 입력받는 메서드 next()와 nextLine()이 있다.
- 둘 다 문자열로 반환시켜준다는 공통점이 있다.
- 개행문자를 무시하냐 안하냐의 차이점이 있다.
next()
- 공백을 기준으로 한 단어 또는 한 문자씩 입력받는다.
- 공백(space)전까지 입력받은 문자열을 반환한다.
- 개행 문자를 가져올 수 없다.
Scanner scanner = new Scanner(System.in); // Scanner 객체 생성
String str = scanner.next(); // 입력받은 문자열을 str에 저장
// 입력 : Hello World
// 출력 : Hello
nextLine()
- 문자 또는 엔터를 티기 전까지의 문장 전체를 입력받는다.
- Enter를 치기 전까지 쓴 문자열 모두를 반환한다.
- 버퍼에 입력된 문자열을 개행 문자까지 다 가져온다.
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
System.out.println(s);
// 입력 : Hello World
// 출력 : Hello World
참고 자료
- https://pongic.tistory.com/5
- https://devlog-wjdrbs96.tistory.com/80
- https://velog.io/@suyyeon/JAVA-Scanner%ED%81%B4%EB%9E%98%EC%8A%A4-next-nextLine-%EC%B0%A8%EC%9D%B4
'기술 > java' 카테고리의 다른 글
[TIL]240416 wrapper 클래스 (0) | 2024.04.16 |
---|---|
[TIL]240410 JAVA Collection (0) | 2024.04.10 |
[TIL]240406 Set (0) | 2024.04.06 |
[TIL]240403 Map (0) | 2024.04.03 |
[TIL]240325 ArrayList (0) | 2024.03.25 |