Scanner 클래스란?
- 사용자로부터 입력을 받기 위해 Java에서 제공하는 클래스
- java.util 패키지에 속해 있음
▷ new 연산자
메모리(heap)에 새로운 객체를 만들겠다는 의미
▷ System.in
지정된 입력 장치(이클립스 기본값 키보드)
▷ new Scanner(System.in)
키보드 입력을 읽어들이는 Scaneer 객체 생성
▷ sc.nextInt();
- 다음 입력된 정수를 반환
- 단, 정수가 아닌 값을 입력하면 예외(Exception) 발생
#예제1
package ex;
// import : 다른 패키지에 존재하는 클래스를 가져오는 구문
import java.util.Scanner;
public class ScannerEx {
// main method : 자바 실행 메서드(기능)
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("정수 입력 : ");
int i = sc.nextInt();
System.out.println("i : " + i);
System.out.print("정수 입력2 : ");
int j = sc.nextInt();
System.out.println("j : " + j);
System.out.println("i + j = " + (i+j));
# 결과

# 예제2

package ex;
// java.util.Scanner 클래스 가져오기
import java.util.Scanner;
public class ScannerEx2 {
public static void main(String[] args) {
// Scanner 객체 생성
Scanner sc = new Scanner(System.in);
System.out.print("이름 입력 : ");
String name = sc.next(); // 문자열 입력 (띄어쓰기X)
System.out.print("나이 : ");
int age = sc.nextInt();
System.out.print("키 입력(cm) : ");
double height = sc.nextDouble();
System.out.print("성별 입력(남/여) : ");
char gender = sc.next().charAt(0);
System.out.println("자기 소개 : ");
sc.nextLine(); // 버퍼에 남아있는 개행문자 제거
// (자세한 설명은 아래 확인)
String introduce = sc.nextLine();
// 홍길동은 20세, 키 212.5cm의 남성 입니다.
System.out.printf("%s은 %d세, 키 %.1fcm의 %c성 입니다. \n",
name, age, height, gender);
// 자기소개 : 농구 잘할 수 있습니다
System.out.println("자기소개 : " + introduce);
}
}
# 결과

Scanner는 char를 제외한 기본 자료형 7가지를 입력받는 기능(메서드)을 제공
+ 문자열 입력 방법 2개 제공
(next(), nextLine())
문자열.charAt(index)
-> 문자열에서 index번째 문자 하나를 char 형태로 반환
ex) "남".charAt(0) -> '남' (char)
'BackEnd > Java' 카테고리의 다른 글
| [Java]변수 실전예제2 (2) | 2024.07.21 |
|---|---|
| [JAVA]01_변수 실전예제1 (0) | 2024.07.20 |
| [JAVA]변수 Print (1) | 2024.07.18 |
| [JAVA]변수 기초 (0) | 2024.07.18 |
| [JAVA]JAVA 프로그래밍 기초 (0) | 2024.07.18 |