1

本当に理解できない非常に単純な質問があります。

文字列を受け取り、文字列の最初の文字が何であるかを判断し、それを返すメソッドがあります。

public String deterFirstChar(String value){
    String keyValue;
    char res; 
    res = value.charAt(0);
    keyValue = Character.toString(res);
    if (keyValue == "C"){
        return keyValue;
    } else if (keyValue == "G") {
        return keyValue;
    }
    System.out.println("Error: Wrong keyParam");
    return "F";
}

ただし、keyValue = C の例では、返される代わりに、if ステートメントがスキップされ、keyValue が「C」であることが確実にわかっている場合は「F」が返されます。

なぜこれが起こっているのですか?

4

3 に答える 3

0

これを試して

public static char findFirstChar(String string){
    return string.charAt(0);
}
    char out = findFirstChar("Rakesh");
    System.out.println("First Character:"+out);
于 2013-08-06T10:16:09.637 に答える