1. Scanner란
키보드로 값을 입력받기 위한 클래스이다.
- 스캐너 클래스를 사용하기 위해서는 스캐너 메소드를 호출한다.
[호출 방법]
1) 클래스 내에서 Scanner 변수명 = new Scanner(System.in);을 작성해 스캐너 변수를 생성한다.
2) Scanner를 클릭해 scanner(java.util)을 클릭하면 위에 import문이 자동 생성된다.
3) 자바의 java.util 패키지 안에 scanner클래스가 있어 import로 호출
import java.util.Scanner;
2. 클래스 객체 생성
import java.util.Scanner;
public class Example03 {
public static void execute() {
Scanner s = new Scanner(System.in);
}
}
[ Scanner 변수 = new(System.in) ]
System.in은 사용자로부터 입력을 받기 위한 입력 스트림이다.
System.out.print("시간>");
int time = s.nextInt();
if(time == 6) {
System.out.println("기상하세요");
}else if(time == 9) {
System.out.println("출근 시간입니다.");
}else if(time == 12) {
System.out.println("점심 시간입니다.");
}else if(time == 18) {
System.out.println("퇴근시간입니다.");
}else {
System.out.println("잘못된 시간입니다.");
}
- s.nextInt();로 정수로 이루어진 '시간'을 직접 입력받도록 한다.
- 입력한 시간에 따라 콘솔 창에 값이 다르게 도출된다.
3. next메소드로 입력값 받아오기
- 스캐너의 변수에 .next()나 .nextLine()을 붙이면 직접 입력한 "문자"를 받아올 수 있고
- .nextInt()를 붙이면 "정수"를, nextDouble()를 붙이면 "실수"를 받아올 수 있다.
System.out.print("이름>");
String name = s.next();
System.out.print("국어>");
int kor = s.nextInt();
System.out.print("영어>");
int eng = s.nextInt();
System.out.print("수학>");
int math = s.nextInt();
int sum = kor + eng + math;
double avg = sum/3.;
System.out.printf("이름은 %s입니다",name);
System.out.printf( "%s의 평균점수는 %f입니다",name, avg);
이름을 입력받아 name에 저장 -> 문자열이라 next()
국어점수는 kor에 영어점수는 eng에 수학점수는 math에 저장한다. -> 정수라서 nextInt()
next()와 nextLine() 메소드 차이 next() : 콘솔 창에서 공백까지 입력한 값을 받아옴 (띄어쓰기 하고 적은 값은 받지 않는다) nextLine() : 콘솔 창에서 엔터 누르기 전까지 입력된 값을 받아옴 (공백을 모두 포함하여 데이터를 받아온다) ※ next또는 nextInt를 위에서 작성한 뒤 아래에서 nextLine을 작성하면 앞에 작성된 next의 엔터값을 모두 받아와 버리기 때문에 작성한 next 또는 nextInt 뒤에 nextLine을 붙여준다. (엔터값 소멸시키기 위함) 예) int menu = s.nextInt(); s.nextLine(); |
'BE > Java [Servlet , Spring]' 카테고리의 다른 글
Java 성적 입력 프로그램 리뷰 (참조 변수, 문자열 비교 equals) (0) | 2023.01.08 |
---|---|
자바 배열(array) -배열 구조 및 합계 구하기 (0) | 2023.01.06 |
자바 조건문- if문, switch~case문 (0) | 2023.01.03 |
자바 출력문(print , printf, printInt)함수 및 지시자 %n %s %d.. (1) | 2023.01.02 |
자바 컴파일러(eclipse) 설치 및 변수 선언 및 타입, 연산자 (0) | 2023.01.02 |