본문 바로가기
프로그래밍 언어/자바의 정석 기초편

자바의 정석 기초편 ch2-14 화면으로부터 입력받기

by life grow 2022. 5. 8.

클래스: 어떤 기능을 제공하는 것

Scanner클래스는 화면뿐만 아니라 파일로부터도 입력받을 수 있다. 

 

실수를 입력받을때는 nextFloat 

 

문자열을 숫자로 바꾸려면 Integer.parseInt() 사용

 

한 라인에 여러가지 값을 입력받는 경우에는 

nextLine();으로 라인전체를 읽어와서 값을 나눠서 처리 해야할 때는

String input = scanner.nextLine();
int num = Integer.parseInt(input);

이 두 문장을 잘 응용하면 됨

 

위에 두 문장을 한 문장으로 쓸 수 있다.

단순히 숫자하나하나를 입력받을 때는 

int num = scanner.nextInt();

 

import java.util.Scanner;

class Ex2_9 {
	public static void main(String[] args) {
		
		Scanner scanner = new Scanner(System.in);

		int num = scanner.nextInt();
		int num1 = scanner.nextInt();  //2개의 값을 연속적으로 입력하고 싶으면
		System.out.println(num);
		System.out.println(num1);
		
		String input = scanner.nextLine(); //라인 단위로 입력받기
		int num2 = Integer.parseInt(input);
		
		System.out.println();
	}
}

import java.util.*;

java.util패키지 특정 패키지에 있는 모든 클래스를 사용할 수 있고

import java.util.Scanner;

라고 하면 특정 클래스만 사용가능하다.

 

두개의 값을 연속적으로 입력 받으려면

int num = scanner.nextInt();

int num = scanner.nextInt(); 

2번쓰면 된다.

 

노란밑줄 나오는 이유

모든 입출력 관련 객체들은 사용한 다음에 반드시 닫아줘야된다.

화면 입력 같은 경우는 자바버츄얼머신에 의해 자동관리된다.

이클립스 입장에서는 사용한 다음에 안닫아줘서 경고메시지를 보여주는 것이다.