本当に理解できない非常に単純な質問があります。
文字列を受け取り、文字列の最初の文字が何であるかを判断し、それを返すメソッドがあります。
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」が返されます。
なぜこれが起こっているのですか?