Java Scanner 类:用户输入的门户

简介

你好,热心的学习者们!今天,我们将深入探讨 Java 编程中最有用的工具之一:Scanner 类。将 Scanner 类想象成一个友好的助手,它帮助你的程序与用户进行交流。这就像拥有一个个人秘书,记录用户输入的一切!

Java - Scanner Class

当我第一次开始教 Java 时,我注意到许多学生在处理用户输入时遇到困难。但他们一旦掌握了 Scanner 类,就像是头上亮起了一盏灯。那么,让我们一起踏上这段激动人心的旅程吧!

类声明

在我们开始使用我们的“秘书”之前,我们需要告诉 Java 我们想要使用 Scanner 类。我们通过在程序开头添加一行特殊的代码来实现这一点:

import java.util.Scanner;

这行代码就像是在告诉 Java:“嘿,我需要你工具箱里的那个 Scanner 东西!”记住,每次你想使用 Scanner 时,都要包含这行代码。

类构造器

现在我们已经告诉 Java 我们想要使用 Scanner,我们需要创建我们的 Scanner 对象。这就像雇佣我们的秘书并给他们一个名字。下面是如何操作的:

Scanner myScanner = new Scanner(System.in);

让我们分解一下:

  • Scanner 是我们创建的对象类型
  • myScanner 是我们给 Scanner 对象起的名字(你可以选择任何你喜欢的名字)
  • new Scanner(System.in) 是创建一个新的 Scanner,它将从系统(键盘)读取输入

类方法

我们的 Scanner“秘书”具备多种技能(方法)来帮助我们收集不同类型的输入。以下是一些最常用的方法:

方法 描述
nextLine() 读取一行文本(字符串)
nextInt() 读取一个整数
nextDouble() 读取一个双精度数(小数)
nextBoolean() 读取一个布尔值(true/false)
next() 读取下一个单词

继承的方法

Scanner 还从其父类继承了一些方法。现在不必太担心这些,但知道它们存在是有用的:

方法 描述
clone() 创建 Scanner 的副本
equals() 将此 Scanner 与另一个对象进行比较
finalize() 准备 Scanner 进行垃圾回收
hashCode() 返回此 Scanner 的哈希码
toString() 返回 Scanner 的字符串表示

使用 Scanner 类从控制台读取一行的示例

现在,让我们用一个简单的示例来将我们的新知识付诸实践:

import java.util.Scanner;

public class ScannerExample {
public static void main(String[] args) {
// 创建一个 Scanner 对象
Scanner myScanner = new Scanner(System.in);

// 提示用户输入他们的名字
System.out.println("What's your name?");

// 读取用户的输入
String name = myScanner.nextLine();

// 打印问候语
System.out.println("Hello, " + name + "! Welcome to Java programming!");

// 关闭 Scanner
myScanner.close();
}
}

让我们分解一下:

  1. 我们导入 Scanner 类。
  2. 我们创建一个名为 myScanner 的 Scanner 对象。
  3. 我们在控制台上打印一个问题。
  4. 我们使用 nextLine() 读取用户的输入并将其存储在 name 变量中。
  5. 我们使用用户输入的名字打印一个问候语。
  6. 我们关闭 Scanner 以释放资源。

输出

当你运行这个程序时,它的输出可能会像这样:

What's your name?
Alice
Hello, Alice! Welcome to Java programming!

这难道不酷吗?就像和你的电脑进行对话!

一点警告

这是我的教学经历中的一个小故事。曾经有一个学生忘记在程序结束时关闭他们的 Scanner。一开始看起来没问题,但当他们在后来运行一个更复杂的程序时,奇怪的事情开始发生!记住,在你完成 Scanner 使用后,总是要关闭它,就像你会在一天结束时解雇你的秘书一样。

结论

恭喜你!你已经迈出了进入 Java 用户输入世界的第一步。Scanner 类是一个强大的工具,它将允许你创建交互式程序。记住,熟能生巧。尝试创建一些要求不同类型输入的程序——也许是一个询问数字的计算器,或者是一个问答游戏!

在你继续 Java 之旅的过程中,你将发现许多更多令人兴奋的功能。但现在,给自己一个鼓励。你不再只是和你的电脑对话——你们正在进行交流!

Credits: Image by storyset