如何将字符数组转换为字符串?
我有这个代码
Console c = System.console();
if (c == null) {
System.err.println("No console.");
System.exit(1);
}
char [] password = c.readPassword("Enter your password: ");
我需要将其转换为String,以便我可以验证
if(stringPassword == "Password"){
System.out.println("Valid");
}
任何人都可以帮我吗?
答案 0 :(得分:25)
使用String(char[])
构造函数。
char [] password = c.readPassword("Enter your password: ");
String stringPassword = new String(password);
当你比较时,不要使用==
,使用`.equals():
if(stringPassword.equals("Password")){
答案 1 :(得分:6)
您需要new String
中的char[]
。然后,您需要使用.equals()
方法比较它们,而不是==
。
所以而不是
if(stringPassword == "Password"){
你得到了
if("password".equals(new String(stringPassword))) {
答案 2 :(得分:0)
虽然效率不高,但你总是可以使用for循环:
char [] password = c.readPassword("Enter your password: ");
String str = "";
for(i = 0; i < password.length(); i++){
str += password[i];
}
这是一种非常简单的方法,不需要事先了解标准库中的函数/类!