Console
类的目的是使Java程序和控制台之间的交互更容易。Console
类是java.io
包中的一个实用程序类,用于访问系统控制台。
控制台不能保证在所有机器上的Java程序中可访问。 例如,如果Java程序作为服务运行,则不会有控制台与JVM相关联。
通过使用System
类的静态console()
方法获得控制台类的实例,如下所示:
Console console = System.console()
if (console != null) {
console.printf("Console is available.")
}
Console
类有一个printf()
方法,用于在控制台上显示格式化的字符串。还在PrintStream
类中有一个printf()
方法来写入格式化的数据。
以下代码说明如何使用控制台类。
程序提示用户输入用户名和密码。 如果用户输入的密码为:password
,程序将打印一条消息。
import java.io.Console
public class Main {
public static void main(String[] args) {
Console console = System.console()
if (console != null) {
console.printf("Console is available.%n")
} else {
System.out.println("Console is not available.%n")
return // A console is not available
}
String userName = console.readLine("User Name: ")
char[] passChars = console.readPassword("Password: ")
String passString = new String(passChars)
if (passString.equals("password")) {
console.printf("Hello %s", userName)
} else {
console.printf("Invalid password")
}
}
}
上面的代码生成以下结果。