Win a copy of Programmer's Guide to Java SE 8 Oracle Certified Associate (OCA) this week in the OCAJP forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

String addition

 
mi te
Greenhorn
Posts: 29
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
What is happenning when you add two string?

code:

public class StringAddition{

public static void main(String args[]){

String a = "a";
String b = "b";
String ab = "ab";

ab = a + b;
System.out.println(ab == "ab");
System.out.println(ab == ab);
System.out.println((a+b) == ab);
}
}

output:

false
true
false

I understand why the first and second output are as they are, but why the third one is false? What is the difference between the objects of ab and (a + b)? Please someone explain. I read about String on sites but I don`t still get it.
 
mambe nanje
Ranch Hand
Posts: 31
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
well (a+b) is adding the two stings objects and passing it in a constructor of a new string and such that a new string object is created which is not equal to the former, remember strings are immutable, but if they were in the pool it will be different
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic