我是一名学习Java的高中生,我想知道如何在Scanner中自动将输入文本更改为星号。这是我为项目制作的简单登录系统。我的代码是
Scanner scan = new Scanner(System.in);
boolean correctLogin = false;
String username;
String password;
String enteredUsername;
String enteredPassword;
while(correctLogin != true){
System.out.println("Enter Username: ");
enteredUsername = scan.nextLine();
System.out.println("Enter Password: ");
enteredPassword = scan.nextLine();
if(enteredUsername.equals("username") && enteredPassword.equals("passw00rd")){
System.out.println("You have entered the correct login info");
correctLogin = true;
break;
}
else{
System.out.println("Your login info was incorrect, please try again");
}
}
System.out.println("You are now logged in, good job!");
我想要它,这样当我输入密码时,它会自动变成星号。
答案 0 :(得分:1)
尝试使用此密码读取:
Console console = System.console();
if(console != null){
console.readPassword("Enter Password: ");
}
答案 1 :(得分:-2)
我不确定我是否正确地提出了你的问题,但我仍然会尝试解释我的理解。
为确保您在用户屏幕上看到***,您需要使用HTML编写某种用户界面。我认为在这种情况下,您在eclipse中运行代码并通过某种主方法运行。如果是这样的话,那么Vince提到**没有任何好处,因为这些字母会出现在控制台中。
我建议的是寻找一些基本的Web应用程序教程,然后你会对它的工作方式有更多的了解。
HTH