📜  Java中的扫描仪 reset() 方法及示例(1)

📅  最后修改于: 2023-12-03 15:16:32.731000             🧑  作者: Mango

Java中的扫描仪reset()方法及示例

在Java中,Scanner(扫描仪)是一个用于读取用户输入或文件内容的类。Scanner类提供了许多有用的方法,包括reset()方法。

reset()方法用于将Scanner对象的输入位置重置为其最初构造时的初始值,这样可以重新读取输入,从而使Scanner对象重新可用。

语法

Scanner类的reset()方法的语法如下:

public void reset()
参数

reset()方法不接受任何参数。

返回值

reset()方法不返回任何内容。

示例

下面是使用reset()方法的简单示例。本示例演示如何将扫描仪对象从一个字符串读取器中重置为从控制台读取输入。

import java.util.Scanner;

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

    // Prompt the user to enter a string
    System.out.print("Enter a string: ");
    String input = scanner.nextLine();
    System.out.println("You entered: " + input);

    // Reset the scanner to read from the console
    scanner.reset();
    System.out.print("Enter another string: ");
    input = scanner.nextLine();
    System.out.println("You entered: " + input);

    scanner.close();
  }
}

代码执行结果:

Enter a string: Hello world!
You entered: Hello world!
Enter another string: Testing reset() method
You entered: Testing reset() method

上述示例中,首先要求用户输入一个字符串。然后使用scanner.reset()将Scanner对象重置为从控制台读取输入,最后,要求用户再次输入另一个字符串。

需要注意的是,在调用scanner.reset()之前,必须先将Scanner对象关闭,否则会抛出IllegalStateException异常。此外,在重置Scanner对象之前,不能调用其它的Scanner对象方法。