public class Main
{
public static void main(String[] args)
{
String a = new String("abcd");
String b = new String("abcd");
if(a == b)
System.out.println("true");
else
System.out.println("false");
if(a.equals(b))
System.out.println("true");
else
System.out.println("false");
}
}
The output will be:
false
true
Explanation:
The operator "==" check if String "a" and String "b" refers to the same object - to the same place in the memory.
Method equals() compare the content of Strings (content of two objects).
Take a look at second example;
public class Main
{
public static void main(String[] args)
{
String a = new String("abcd");
String b = a;
if(a == b)
System.out.println("true");
else
System.out.println("false");
}
}
Now the result is:
true
true
Explanation:
The operator "==" check if String "a" and String "b" refers to the same object. Yes, it refers to the same object (String b = a;).
Remember:
The operator "==" check if objects refers to the same memory location.
Method equals() check the value of the object.
No comments:
Post a Comment