에 따르면 문자열 # 인턴 () , intern
메소드는 문자열이 문자열 풀에서 발견되는 경우, 그렇지 않으면 새로운 문자열 객체는 문자열 풀에 추가되고이 String의 참조가 반환, 문자열 수영장에서 문자열을 반환하기로되어있다.
그래서 나는 이것을 시도했다 :
String s1 = "Rakesh";
String s2 = "Rakesh";
String s3 = "Rakesh".intern();
if ( s1 == s2 ){
System.out.println("s1 and s2 are same"); // 1.
}
if ( s1 == s3 ){
System.out.println("s1 and s3 are same" ); // 2.
}
s1 and s3 are same
s3이 억지로 인쇄되고 s1 and s2 are same
인쇄되지 않을 것으로 예상했습니다 . 그러나 결과는 다음과 같습니다. 두 줄이 모두 인쇄됩니다. 따라서 기본적으로 문자열 상수가 인터 닝됩니다. 그러나 그렇다면 왜 intern
방법이 필요 합니까? 다시 말해이 방법을 언제 사용해야합니까?
intern
공개적인 방법 을 가지고 있습니까? intern
아무도 접근 할 수 없도록 전용 메소드로 사용 해서는 안됩니다 . 아니면이 방법의 목적이 있습니까?