java공부
자바/java Scanner 사용법 알아보자
이쟤키
2021. 7. 18. 14:35
반응형
Scanner위치는
java.util.Scanner
불러오는 법은
import java.util.Scanner;
Scanner (변수명) = new Scanner(System.in);
사용법
next 계열
(입력값 이전에 만난 공백/개행문자는 무시하고, 입력값 이후의 처음 만나는 공백/개행문자 전까지만 버퍼에서 읽어옴.
import java.util.Scanner;
Scanner sc = new Scanner(System.in);
System.out.print("이름 : ");
String name = sc.next();
System.out.println("입력값 : " + name);
System.out.print("평균점수 : ");
double dnum = sc.nextDouble();
System.out.println("입력값 : " + 평균점수);
-String, int, Double ... 등 기본형 가능한데 char는 안됨
char 사용 방법
ex) 성별
char sex = sc.next().charAt(0);
풀어서 쓴다면
String temp = sc.next();
char sex = temp.charAt(0);
즉 String, int Double등에서 입력받고 첫번째 글자를 가져오는 형식
nextLine 계열
(처음만난 개행문자까지 버퍼에서 읽어와서 개행문자를 제거 후 값을 리턴함.)
예) 주소사용
System.out.print("주소 : ");
String addr = sc.nextLine();
System.out.println("입력값 : " + addr);
next계열을 사용하고 nextLine계열을 사용할 때
nextLine내용이 먹어버릴 일이 발생한다.
그럴때는 next계열 다음에 nextLine을 한번 더 호출해 주면 해결된다.
System.out.print("이름 : ");
String name = sc.next();
System.out.println("입력값 : " + name);
sc.nextLine(); //개행문자 버리기 용
System.out.print("주소 : ");
String addr = sc.nextLine(); // 공백이 포함된 문자열은 nextLine으로 처리해야 한다.
System.out.println("입력값 : " + addr);