Win a copy of Design for the Mind this week in the Design forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

String buffer

 
Tosin Adedoyin
Ranch Hand
Posts: 43
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
class Mock
{
public static void main(String args[]) {
StringBuffer sb1 = new StringBuffer("Amit");
StringBuffer sb2= new StringBuffer("Amit");
String ss1 = "Amit";
System.out.println(sb1==sb2);
System.out.println(sb1.equals(sb2)); // line 2
System.out.println(sb1.equals(ss1));
System.out.println("Poddar".substring(3));
}
}
why does line 2 print false instead of True
 
luco zhao
Ranch Hand
Posts: 50
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Tosin Adedoyin:
class Mock
{
public static void main(String args[]) {
StringBuffer sb1 = new StringBuffer("Amit");
StringBuffer sb2= new StringBuffer("Amit");
String ss1 = "Amit";
System.out.println(sb1==sb2);
System.out.println(sb1.equals(sb2)); // line 2
System.out.println(sb1.equals(ss1));
System.out.println("Poddar".substring(3));
}
}
why does line 2 print false instead of True

Because StringBuffer class doesn't override equals() method, not expected as String class which overrides equals() method.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic