Dev. Java/Java.lang
String 클래스 intern 메소드
devock
2014. 4. 21. 00:25
String 클래스의 intern()은 String 인스턴스의 문자열을 'constant pool'에 등록하는 일을 한다.
등록하고자 하는 문자열이 'constant pool'에 존재하는 경우에는 그 문자열의 주소값을 반환한다.
즉 주소값이 같아져서 같은 객체로 인식하게 된다.
public class StringEx3 {
public static void main(String args[]){
String s1 = "AAA";
String s2 = new String("AAA");
if(s1 == s2){
System.out.println("s1 == s2 ? true");
}else{
System.out.println("s1 == s2 ? false");
}
s2 = s2.intern();
System.out.println("s2에 intern()을 호출한 후");
if(s1 == s2){
System.out.println("s1 == s2 ? true");
}else{
System.out.println("s1 == s2 ? false");
}
}
}