Java 用户输入 (Scanner)
Java 用户输入
Scanner
类用于获取用户输入,它位于 java.util
包中。
要使用 Scanner
类,请创建该类的一个对象,并使用 Scanner
类文档中找到的任何可用方法。在我们的示例中,我们将使用 nextLine()
方法,该方法用于读取字符串。
示例
import java.util.Scanner; // Import the Scanner class
class Main {
public static void main(String[] args) {
Scanner myObj = new Scanner(System.in); // Create a Scanner object
System.out.println("Enter username");
String userName = myObj.nextLine(); // Read user input
System.out.println("Username is: " + userName); // Output user input
}
}
If you don't know what a package is, read our Java Packages Tutorial.
输入类型
在上面的示例中,我们使用了 nextLine()
方法,该方法用于读取字符串。要读取其他类型,请查看下表:
方法 | 描述 |
---|---|
nextBoolean() |
从用户处读取一个 boolean 值 |
nextByte() |
从用户处读取一个 byte 值 |
nextDouble() |
从用户处读取一个 double 值 |
nextFloat() |
从用户处读取一个 float 值 |
nextInt() |
从用户处读取一个 int 值 |
nextLine() |
从用户处读取一个 String 值 |
nextLong() |
从用户处读取一个 long 值 |
nextShort() |
从用户处读取一个 short 值 |
在下面的示例中,我们使用不同的方法来读取各种类型的数据:
示例
import java.util.Scanner;
class Main {
public static void main(String[] args) {
Scanner myObj = new Scanner(System.in);
System.out.println("Enter name, age and salary:");
// String input
String name = myObj.nextLine();
// Numerical input
int age = myObj.nextInt();
double salary = myObj.nextDouble();
// Output input by user
System.out.println("Name: " + name);
System.out.println("Age: " + age);
System.out.println("Salary: " + salary);
}
}
注意: 如果您输入了错误的输入(例如,在数字输入中输入文本),您将收到一个异常/错误消息(如“InputMismatchException”)。
您可以在异常章节中阅读有关异常以及如何处理错误的更多信息。
完整的 Scanner 参考
提示: 有关 Scanner 方法的完整参考,请访问我们的 Java Scanner 参考。