Java如何在输入的时候就用*来代替,就像输入密码的时候一样
时间: 2024-05-01 17:16:24 浏览: 160
在Java中,可以使用System.console()方法来实现在输入时用*代替。具体实现如下:
```java
import java.io.Console;
public class PasswordInputDemo {
public static void main(String[] args) {
Console console = System.console();
if (console == null) {
System.out.println("Console not available");
System.exit(1);
}
char[] passwordArray = console.readPassword("Enter your password: ");
String password = new String(passwordArray);
System.out.println("Your password is: " + password);
}
}
```
在上面的代码中,使用System.console()方法获取控制台对象,然后调用控制台对象的readPassword()方法来读取密码,该方法会在控制台上显示"Enter your password: "提示信息,并且在用户输入密码时用*代替。最后将读取到的密码转换成字符串并输出。
相关问题
如何让Java Scanner输入的参数用*代替
您可以使用Java的Scanner类中的nextLine()方法来读取输入,并使用String类的replace()方法来将输入中的所有字符替换为*。
以下是示例代码:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入您的密码:");
String password = scanner.nextLine();
String hiddenPassword = password.replace(password, "*".repeat(password.length()));
System.out.println("您输入的密码为:" + hiddenPassword);
}
}
```
在上面的代码中,我们首先使用Scanner类的nextLine()方法读取用户输入的字符串并将其存储在名为password的变量中。然后,我们使用String类的replace()方法将password中的所有字符替换为*,并将结果存储在名为hiddenPassword的变量中。最后,我们输出hiddenPassword。
请注意,上面的代码使用了Java 11中的新特性,即String类的repeat()方法。如果您在较旧的Java版本中使用上面的代码,则应该使用循环来重复*。例如,可以使用以下代码替换上面的第5行:
```java
String hiddenPassword = "";
for (int i = 0; i < password.length(); i++) {
hiddenPassword += "*";
}
```
Kotlin在命令行中怎么输入密码时候用*代替
在Kotlin中,命令行输入密码时使用*代替的方法与其他编程语言类似,可以使用Java中的System.console()方法来实现。下面是一个示例代码:
```kotlin
import java.io.Console
fun main(args: Array<String>) {
val console: Console = System.console()
if (console != null) {
val password: CharArray = console.readPassword("Enter password: ")
println("Password is: ${password.joinToString("")}")
} else {
println("No console available")
}
}
```
在这个示例中,我们首先调用System.console()方法获取控制台对象,然后使用控制台对象的readPassword()方法读取密码,该方法会将用户输入的密码用*代替。最后,我们将密码转换为字符串并输出。需要注意的是,System.console()方法在某些情况下可能返回null,因此我们需要进行非空判断。
阅读全文