java中scanner的使用
时间: 2024-09-08 09:01:11 浏览: 175
在Java中,`Scanner` 类位于 `java.util` 包中,它被用于获取用户的输入。用户可以输入不同类型的数据,比如字符串、整数、浮点数等。`Scanner` 类提供了一系列方法来扫描输入,如 `nextLine()`、`nextInt()`、`nextDouble()` 等。
以下是一个简单的使用`Scanner`的例子:
```java
import java.util.Scanner; // 引入Scanner类
public class ScannerExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in); // 创建Scanner对象,关联标准输入流
System.out.println("请输入您的名字:");
String name = scanner.nextLine(); // 使用nextLine()方法读取一行文本(字符串)
System.out.println("欢迎您:" + name);
System.out.println("请输入您的年龄:");
int age = scanner.nextInt(); // 使用nextInt()方法读取一个整数
System.out.println("您输入的年龄是:" + age);
// 关闭scanner对象
scanner.close();
}
}
```
在这个例子中,我们首先导入了 `Scanner` 类,然后创建了一个 `Scanner` 对象来读取标准输入流(通常是键盘输入)。我们用 `nextLine()` 读取用户输入的一行字符串,并用 `nextInt()` 读取一个整数。最后,记得在使用完毕后关闭 `Scanner` 对象。
需要注意的是,调用 `nextInt()`、`nextDouble()` 等方法后,输入流中的换行符(`\n`)会被留在输入流中。如果后续使用 `nextLine()` 方法,它会直接读取并返回换行符之前的内容,可能会导致输入看上去像是被跳过了一行。为了解决这个问题,可以在 `nextInt()` 或 `nextDouble()` 后调用 `nextLine()` 来消费掉留在输入流中的换行符。
阅读全文