12

文字配列を文字列に変換するにはどうすればよいですか?
私はこのコードを持っています

Console c = System.console();
if (c == null) {
    System.err.println("No console.");
    System.exit(1);
}
char [] password = c.readPassword("Enter your password: ");

確認できるように、それを文字列に変換する必要があります

if(stringPassword == "Password"){
    System.out.println("Valid");
}

誰かがこれを手伝ってくれますか?

4

3 に答える 3

25

String(char[])コンストラクターを使用します。

char [] password = c.readPassword("Enter your password: ");
String stringPassword = new String(password);

そして、比較するときは==、使用せず、 `.equals()を使用してください。

if(stringPassword.equals("Password")){
于 2012-07-26T22:10:06.687 に答える
6

あなたはから作りたいと思うでしょnew Stringchar[].equals()次に、ではなく、メソッドを使用してそれらを比較する必要があります==

だから代わりに

if(stringPassword == "Password"){

あなたが得る

if("password".equals(new String(stringPassword))) {
于 2012-07-26T22:12:01.373 に答える
0

それほど効率的ではありませんが、常にforループを使用できます。

char [] password = c.readPassword("Enter your password: ");
String str = "";

for(i = 0; i < password.length(); i++){
    str += password[i];
}

これは非常に簡単な方法であり、標準ライブラリの関数/クラスに関する予備知識は必要ありません。

于 2014-02-04T04:44:17.440 に答える