+/Java

keyboardInput 기능 - Scanner 클래스

writtenbyrla 2023. 12. 8. 13:29

앞서 출력문을 이용해 원하는 문자를 직접 출력을 해 보았다면, 

오늘은 화면에서 입력값을 데이터로 받아 처리하는 기능을 알아볼 것이다.

 

java에는 Scanner 클래스라고 해서 기본적으로 제공되는 기능이 있는데, 이 클래스 내에 필요한 메서드를 불러와 사용하면 된다.

 

제일 먼저 할 일은 Scanner 클래스를 생성하고 import 하기

import java.util.Scanner;

public static void main(String[] args) {
	Scanner sc = new Scanner(System.in);
}

 

 

위와 같이 클래스 선언 후 필요한 메서드를 불러오면 되는데, 

입력 받을 값의 형태에 따라 불러오는 메서드가 달라진다.

 

  • 문자열: sc.next() - 공백이 있을 경우 공백 이전까지

                            sc.nextLine() - 공백 포함 엔터 전까지

  • 정수: sc.nextInt()
  • 실수: sc.nextFloat(), sc.nextDouble()

 


 

예제 적용)

Scanner sc = new Scanner(System.in);
System.out.print("당신의 이름은 무엇입니까? > ");
String name = sc.next();
sc.nextLine();
		
System.out.print("당신의 집은 어디십니까? > ");
String addr = sc.nextLine();
		
System.out.print("당신의 나이는 몇살입니까? > ");
int age = sc.nextInt();
		
System.out.print("당신의 키는 몇입니까? (소수점 첫째 자리까지 입력하세요.) > ");
float height = sc.nextFloat();
sc.nextLine(); 
		
System.out.print("당신의 성별은 무엇입니까? (남/여) > ");
String line = sc.nextLine();
char gender = line.charAt(0); // 가장 첫 글자만 가지고 옴
		
System.out.printf("당신의 이름은 %s이고 사는 곳은 %s, 나이는 %d세, 키는 %.1fcm, 성별은 %c입니다.",name, addr, age, height, gender);

 

결과

'+ > Java' 카테고리의 다른 글

예외 처리  (0) 2024.04.17
연산자  (0) 2023.12.08
출력문 - print, println, printf 구분하기  (0) 2023.12.07
변수(Variable) - 2 (형 변환)  (2) 2023.11.21
변수(Variable) - 1  (0) 2023.11.10