Java String intern() method
Java String intern() method returns canonical representation for the String Object. syntax:
public String intern()Return: It returns a interned String that to be a pool of unique String. Java String intern() Example 1
public class JavaStringInternEx1 { public static void main(String args[]) { String s1=new String("Nitish"); System.out.println("String s1 : "+s1); String s2="Nitish"; System.out.println("String s2 : "+s2); String s3=s1.intern();//returns string from pool, now it will be same as s2 System.out.println("Interned String is: " +s3); System.out.println("s1 == s2---> "+(s1==s2));//false because reference variables are pointing to different instance System.out.println("s2 == s3---> "+(s2==s3));//true because reference variables are pointing to same instance } }Output:
String s1 : NitishString s2 : NitishInterned String is: Nitishs 1 == s2---> falses 2 == s3---> trueJava String intern() Example 2
public class JavaStringInternEx2 { public static void main(String[] args) { String s1 = "TutorialAndExample.com"; String s2 = "TutorialAndExample.com"; String s3 = new String("TutorialAndExample.com"); final String s4 = s3.intern(); System.out.println("s1 == s2---> "+(s1 == s2)); System.out.println("s2 == s3---> "+(s2 == s3)); System.out.println("s3 == s4---> "+(s3 == s4)); System.out.println("s1 == s3---> "+(s1 == s3)); System.out.println("s1 == s4---> "+(s1 == s4)); System.out.println("s1 equals s2---> "+(s1.equals(s2))); System.out.println("s2 equals s3---> "+(s2.equals(s3))); System.out.println("s3 equals s4---> "+(s3.equals(s4))); System.out.println("s1 equals s4---> "+(s1.equals(s4))); System.out.println("s1 equals s3---> "+(s1.equals(s3))); } }output:
s1 == s2---> trues 2 == s3---> falses 3 == s4---> falses 1 == s3---> falses 1 == s4---> trues 1 equals s2---> trues 2 equals s3---> trues 3 equals s4---> trues 1 equals s4---> trues 1 equals s3---> true