자바의 정석 - 기초편

화면으로부터 입력 받기

ODaram 2022. 7. 28. 16:25

화면에서 입력받기 - Sacnner

 > Scanner 란?

   - 화면으로부터 데이터를 입력받는 기능을 제공하는 클래스

 

 > Scanner를 사용하려면...

   1) import문 추가

         import java.util.*;

   2) Scanner 객체의 생성

         Scanner scanner = new Scanner(System.in); ( system.in : 화면 입력)

   3) Scanner 객체를 사용

         int num = scanner.nextInt(); // 화면에서 입력받은 정수를 num에 저장

                                      nextFloat() <- 실수

         String input = scanner.nextLine(); // 화면에서 입력받은 내용을 input에 저장 (nextLine : 한 행)

         int num = Integer.parseInt(input); // 문자열(input)을 숫자(num)으로 변환 

 

예제1) import문 추가하기

import java.util.*; // * 모든 클래스 사용 , Scanner 클래스만 적어줘도 됨

예제2) Scanner 클래스 객체 생성하기

import java.util.*; // 1. Import 문 추가

public class ScanfEx1 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		// 2. Scanner 클래스의 객체 생성
		Scanner scanner = new Scanner(System.in);
	}

}

예제2) 생성된 객체를 가지고 화면에서 입력 받기

public class ScanfEx1 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		// 2. Scanner 클래스의 객체 생성
		Scanner scanner = new Scanner(System.in);
		
		int num = scanner.nextInt();
		System.out.println(num);
    }
}

화면으로부터 입력받은 값 출력

                      >> 입력된 값은 파란색 / 출력된 값은 흰색

예제3) 두개의 값을 연속적으로 입력 받기

public class ScanfEx1 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		// 2. Scanner 클래스의 객체 생성
		Scanner scanner = new Scanner(System.in);
		
		int num = scanner.nextInt();
        int num2 = scanner.nextInt(); // 추가
		System.out.println(num);
        System.out.println(num2); // 추가 
    }
}

두개 입력받기

예제4) 라인단위로 입력 받기

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		// 2. Scanner 클래스의 객체 생성
		Scanner scanner = new Scanner(System.in);
		
		String input = scanner.nextLine(); 
        // 라인단위로 입력받기 위한 문구 (값을 여러개, 숫자, 문자열, 실수... 섞여있을 때) 사용
        int num = Integer.printInt(input);
        
        System.out.println(num);
	}
}

 

+ Scanner가 노란색으로 뜨는 이유

  >> 모든 입출력 관련된 객체들은 사용한 후 반드시 닫아주어야하는데, 닫지 않아 표시됨

  JVM이 자동으로 관리해주기 때문에 무시해도됨

'자바의 정석 - 기초편' 카테고리의 다른 글

타입간의 변환방법  (0) 2022.07.29
정수형의 오버플로우  (0) 2022.07.28
printf를 이용한 출력  (0) 2022.07.28
기본형의 종류와 범위  (0) 2022.07.28
기본형과 참조형  (0) 2022.07.28