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

Java中的Scanner函数:如何使用它从控制台读取用户输入?

发布时间:2023-06-07 05:11:03

Scanner是Java中非常常用的输入工具类,它可以读取来自控制台、文件、字符串等的数据,使得我们可以轻松地获取用户的输入,并进行相应的操作。本文将简单介绍如何从控制台读取用户输入。

在使用Scanner之前,我们需要先在程序头部引入Scanner包:

import java.util.Scanner;

然后我们需要创建一个Scanner对象,并指定它的输入源为System.in,如下所示:

Scanner scanner = new Scanner(System.in);

现在我们就可以使用Scanner从控制台读取用户输入了。Scanner的输入方法主要有next()、nextInt()、nextDouble()、nextLine()等。这些方法的返回值分别对应着用户所输入的字符串、整型、浮点型、一行字符串等。下面我们逐一介绍。

1. next()

next()方法可以读取下一个由空格、换行符等分隔符隔开的字符串,并返回该字符串。如果输入的数据包含多个字符串,只会返回 个。

示例代码如下:

Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String str = scanner.next();
System.out.println("您输入的字符串是:" + str);

输入界面如下:

请输入一个字符串:
Hello world!

输出结果为:

您输入的字符串是:Hello

可以看到,只有输入的 个单词被正确读取。

2. nextInt()

nextInt()方法可以读取下一个由空格、换行符等分隔符隔开的整数,并返回该整数。

示例代码如下:

Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = scanner.nextInt();
System.out.println("您输入的整数是:" + num);

输入界面如下:

请输入一个整数:
123

输出结果为:

您输入的整数是:123

3. nextDouble()

nextDouble()方法可以读取下一个由空格、换行符等分隔符隔开的浮点数,并返回该浮点数。

示例代码如下:

Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个浮点数:");
double num = scanner.nextDouble();
System.out.println("您输入的浮点数是:" + num);

输入界面如下:

请输入一个浮点数:
3.14

输出结果为:

您输入的浮点数是:3.14

4. nextLine()

nextLine()方法可以读取整行字符串,包括回车符,并返回该字符串。

示例代码如下:

Scanner scanner = new Scanner(System.in);
System.out.println("请输入一行字符串:");
String str = scanner.nextLine();
System.out.println("您输入的字符串是:" + str);

输入界面如下:

请输入一行字符串:
Hello world!

输出结果为:

您输入的字符串是:Hello world!

需要注意的是,如果我们先使用next()方法读取字符串,然后再使用nextLine()方法读取整行字符串,可能会出现异常,因为next()方法读取的只是字符串的一部分,回车符并没有被读取,而nextLine()方法会读取掉回车符,这就导致了程序出错。因此,建议只使用nextLine()方法读取整行字符串。

至此,我们已经学习了Scanner的常用输入方法。在读取用户输入的同时,还需要进行相应的异常处理,避免程序出现不可预料的错误。例如,在读取整型数据时,如果用户输入的数据不是整型数据,就会抛出InputMismatchException异常。因此,在使用Scanner时,我们需要注意对异常的处理。

总结一下,使用Scanner读取用户输入,主要需要进行以下步骤:

1. 引入Scanner包:import java.util.Scanner;

2. 创建Scanner对象:Scanner scanner = new Scanner(System.in);

3. 使用相应的输入方法读取用户输入,如:scanner.nextInt()、scanner.nextLine()等。

4. 对可能发生的异常进行相应的处理。

Scanner是Java中非常常用的工具类,使用它可以轻松地获取用户的输入。希望这篇文章能够帮助大家更好地理解和使用Scanner。