Make the Right Comparison

Make the Right Comparison

Although Java’s String package is a lot more friendly than C’s string handling, you can still find yourself surprised by its behavior at times. Consider this code:

 import java.lang.String;public class StringCompareTest {   public static void main(String argv[])    {      String string1 = "JavaPro";      String string2 = "JavaPro";      if (string1 == string2)         System.out.println("Equal!");   }}

Even though both string1 and string2 contain the same values, this class will still tell you they’re different. Why? The answer lies in the use of the == operator: when used in this way, Java compares the value of the pointers to the strings, not the string values. The right comparison code looks like this:

 If (string1.equals(string2)) 


Share the Post: