내가있는 경우 : 내 경험에Java에서 String == String은 (.equals() 사용과 반대되는) 메서드 내에서 true로 평가되는 이유는 무엇입니까?
Boolean isEqual = compare("Hello World");
Boolean compare(String c) {
String s = "Hello World";
return s == c;
}
,이 true를 반환합니다. 왜?
내가있는 경우 : 내 경험에Java에서 String == String은 (.equals() 사용과 반대되는) 메서드 내에서 true로 평가되는 이유는 무엇입니까?
Boolean isEqual = compare("Hello World");
Boolean compare(String c) {
String s = "Hello World";
return s == c;
}
,이 true를 반환합니다. 왜?
인턴되었습니다 문자열 리터럴 때문에 동일한 인스턴스가 사용됩니다.
new String("Hello World")
을 false로 설정하십시오.
여기에 전에 여러 번 물어보십시오
그럼 왜이 질문에 답하고 원래 답변을 듣지 않습니까? – aviad
쿨, 고마워! 죄송합니다 중복, 나는 이것을 삭제합니다. 나는이 질문을 한 다른 사람을 찾는 데 어려움을 겪고 있었다. – solarbabies
문자열 리터럴은 실제로는 하나의 문자열 만 의미하는 "intern"입니다. –