Java로 사용자 입력 가져 오기

Rupam Yadav 2023년10월12일
  1. Java에서 사용자 입력을 가져 오는Scanner
  2. Java에서 사용자 입력을 얻기위한BufferedReader
Java로 사용자 입력 가져 오기

이 기사에서는 Java에서 사용자 입력을 얻는 가장 좋은 방법에 대해 설명합니다. 여러 가지 방법이 있지만 이러한 방법 중 일부는 이미 더 이상 사용되지 않으므로 피할 것입니다.

Java에서 사용자 입력을 가져 오는Scanner

Scanner를 사용하여 목표를 달성 할 수 있습니다. 사용자로부터 입력을 받기 위해InputStream을 열기 때문에 클래스의 객체를 생성하고System.in을 생성자에게 전달해야합니다.

다음 단계는Scanner 개체를 사용하고 다음 메서드 중 하나를 호출하는 것입니다. 모든 메소드는 서로 다른 데이터 유형의 입력 값을 사용합니다.

방법 기술
next() 문자열 값
nextInt() 정수 값
nextByte() 바이트 값
nextLong() 긴 가치
nextFloat() 부동 값
nextDouble() 이중 가치

아래 예제에서는 정수 값을받는nextInt()메서드를 사용합니다.

예:

import java.util.Scanner;

public class Main {
  public static void main(String[] args) {
    Scanner inputReader = new Scanner(System.in);
    System.out.println("Enter a number: ");
    int number = inputReader.nextInt();

    System.out.println("Your entered number was: " + number);
  }
}

출력:

Enter a number: 
454
Your entered number was: 454

Java에서 사용자 입력을 얻기위한BufferedReader

사용자로부터 입력을받을 수있는 다른 클래스가 있습니다. BufferedReader는 문자 스트림을 사용하여 입력에서 텍스트를 읽는 반면Scanner는 기본 입력 유형일 때 사용할 수 있습니다.

이는BufferedReader 클래스에nextInt()와 같은 메소드가 없지만 입력을 받아 나중에 파싱 할 수있는readLine()메소드가 있음을 의미합니다.

아래 예에서는 입력을 int로 사용합니다. 입력을 읽어서Integer.parseInt(String)를 사용하여int 유형으로 파싱해야합니다. 외부 입력 장치가 없으면 IOException이 나타날 수 있으므로 명령문을try-catch 블록으로 묶어야합니다.

예:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
  public static void main(String[] args) throws IOException {
    InputStreamReader isr = new InputStreamReader(System.in);
    BufferedReader br = new BufferedReader(isr);

    try {
      System.out.println("Please enter a number: ");
      String s = br.readLine();
      int i = Integer.parseInt(s);

      System.out.println("Your entered number was: " + i);
    } catch (IOException e) {
      e.printStackTrace();
    }

    br.close();
  }
}

출력:

Please enter a number: 
454
Your entered number was: 454
작가: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

관련 문장 - Java Input