Java 用户输入(扫描仪)
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
}
}
运行示例 »
如果你不知道什么是包,请阅读我们的 Java 包教程.
输入类型
在上面的例子中,我们使用了 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”)。
您可以在以下位置阅读有关异常以及如何处理错误的更多信息 例外章节.