Java에서 Scanner 지우기

Rupam Yadav 2023년10월12일 Java Java Scanner
  1. Java에서 Scanner를 지우려면nextLine()을 사용하세요
  2. Java에서Scanner를 지우는 새Scanner 개체 만들기
Java에서 Scanner 지우기

Java의Scanner 클래스는 종종 입력 또는 출력을 가져 오는 데 사용됩니다. 기능을 사용하기 위해Scanner 클래스의 객체를 만듭니다.

Scannerclose()메서드는이 메서드에 의해 일단Scanner가 닫히면 입력 스트림이 닫혀서 입력을받을 수 없기 때문에 사용할 수 없습니다.

Java에서Scanner를 지우는 다른 방법이 있으며 다음은 이러한 방법을 설명하는 예입니다.

Java에서 Scanner를 지우려면nextLine()을 사용하세요

Scanner를 지우고 파괴하지 않고 다시 사용하려면Scanner 클래스의nextLine()메서드를 사용하여 현재 행을 스캔 한 다음Scanner를 수행 할 다음 행으로 설정합니다. 새 라인의 다른 작업.

아래 예에서while 루프 내부에서 사용자에게 입력을 요청하고hasNextInt(radix)를 사용하여 유효한 바이너리인지 확인합니다. 유효한 바이너리이면binary 변수에 저장되고, 바이너리 값이 아니면 사용자에게 유효한 바이너리 값을 입력하라는 메시지가 출력됩니다.

이 상황에서Scanner를 지우지 않으면 루프가 끝나지 않습니다. 값이 바이너리가 아니면Scanner는 새 입력을 받기 위해 새 줄로 이동해야합니다. 이것이nextLine()을 사용하여 현재 줄을 건너 뛰고 새 줄로 이동하는 이유입니다.

import java.util.Scanner;

public class ClearScanner {
  public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    int binary = 0;
    int radix = 2;

    while (binary == 0) {
      System.out.print("Please input a valid binary: ");

      if (input.hasNextInt(radix)) {
        binary = input.nextInt(radix);
      } else {
        System.out.println("Not a Valid Binary");
      }
      input.nextLine();
    }

    System.out.print("Converted Binary: " + binary);
  }
}

출력:

Java 클리어 Scanner

Java에서Scanner를 지우는 새Scanner 개체 만들기

Scanner를 지우는 또 다른 방법은 사용자가 이진 값이 아닌 값을 입력 할 때 새Scanner 개체를 만드는 것입니다. 이 방법은 새 개체가 생성 될 때 기존의 Scanner개체가 지워지고 새 입력 스트림이 시작되기 때문에 작동합니다.

import java.util.Scanner;

public class ClearScanner {
  public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    int binary = 0;
    int radix = 2;

    while (binary == 0) {
      System.out.print("Please input a valid binary: ");

      if (input.hasNextInt(radix)) {
        binary = input.nextInt(radix);
      } else {
        System.out.println("Not a Valid Binary");
      }

      input = new Scanner(System.in);
    }

    System.out.print("Converted Binary: " + binary);
  }
}

출력:

Please input a valid binary: 23
Not a Valid Binary
Please input a valid binary: 11101
Converted Binary: 29
튜토리얼이 마음에 드시나요? DelftStack을 구독하세요 YouTube에서 저희가 더 많은 고품질 비디오 가이드를 제작할 수 있도록 지원해주세요. 구독하다
작가: 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 Scanner