欢迎访问宙启技术站
智能推送

Java中如何使用Scanner类的nextInt函数读取用户输入的整数?

发布时间:2023-06-07 17:14:37

Scanner类是Java中的常见I/O类,可以读取来自多种来源的输入。Scanner中的nextInt方法可以使用键盘输入来读取用户输入的整数。nextInt方法会阻塞程序执行,直到用户通过控制台输入整数并按下回车键。 

我们可以通过以下步骤来使用Scanner类的nextInt方法读取用户输入的整数: 

1.导入Scanner类的包。 

在Java中使用Scanner类来读取用户输入之前,需要先导入Scanner类所在的包。 一般而言,Scanner类位于java.util包中,因此我们可以使用“import java.util.Scanner”语句来导入Scanner类。 

2.创建Scanner对象。 

在导入Scanner后,我们需要在代码中创建Scanner对象。我们可以通过以下代码段来创建Scanner对象: 

Scanner input=new Scanner(System.in); 

这行代码将创建一个名为input的Scanner对象,使用System.in作为源读取器。System.in代表了标准输入流,即从控制台输入读取数据。 

3.调用nextInt方法读取整数。 

通过创建Scanner对象,我们就可以使用它的nextInt方法来读取用户输入的整数了。nextInt方法仅读取整数,并将剩余的字符保留在缓冲区中,我们可以在后续的代码中使用这些字符。以下是一个读取用户输入整数的例子: 

import java.util.Scanner; 

public class ReadIntExample { 

  public static void main(String[] args) { 

    Scanner input=new Scanner(System.in); 

    System.out.println("请输入整数:"); 

    int num=input.nextInt(); 

    System.out.println("您输入的整数是:"+num); 

  } 

在这个例子中,我们首先创建了一个Scanner对象input,然后使用println()方法向用户询问要输入的整数。接着我们调用nextInt方法读取整数,并将该值存储在变量num中。最后,我们将读取到的整数打印到控制台上。 

需要注意的一点是,如果用户输入的值不是整数,则会抛出InputMismatchException异常。为此,我们需要在代码中使用try-catch语句来捕获这个异常: 

import java.util.InputMismatchException; 

import java.util.Scanner; 

public class ReadIntExample { 

  public static void main(String[] args) { 

    Scanner input=new Scanner(System.in); 

    System.out.println("请输入整数:"); 

    try { 

      int num=input.nextInt(); 

      System.out.println("您输入的整数是:"+num); 

    }catch (InputMismatchException e) { 

      System.out.println("您输入的不是整数,请重新输入!"); 

    } 

  } 

在这个例子中,我们通过try-catch语句捕获了InputMismatchException异常,并在异常处理块中向用户提供了友好的提示。如果用户输入的不是整数,则程序会提示用户重新输入整数。 

总结 

使用Scanner类的nextInt方法可以方便地从控制台读取用户输入的整数。我们需要先导入Scanner类的包,然后创建一个Scanner对象,并使用nextInt方法读取用户输入的整数。需要注意的是,如果用户输入的值不是整数,则会抛出InputMismatchException异常,我们需要在代码中使用try-catch语句来捕获这个异常。