• Post Reply Bookmark Topic Watch Topic
  • New Topic

String question  RSS feed

 
Ranch Hand
Posts: 60
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
What will be the output of following program?
public class Str{
String s1 = "abc";
String s2 = "abc";
String s3 = "abcabc";
String s4 = new String("abcabc").intern() ;

Str(){
System.out.println(s1 == s2);
System.out.println(s3 == s4);
}

public static void main(String args[]){
Str str = new Str();
}
}
1. true
false
2. false
false
3. true
true
4. false
true
5. compiler error
 
Ranch Hand
Posts: 61
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Ali :
The output will be
3) true
true
and yes, I have checked it.
This is because when you call intern() on s4 , you are basically putting s4 in the string pool.
Hope it helps.
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!