devxlogo

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)) 

Charlie has over a decade of experience in website administration and technology management. As the site admin, he oversees all technical aspects of running a high-traffic online platform, ensuring optimal performance, security, and user experience.

See also  Seven Service Boundary Mistakes That Create Technical Debt

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.