java中使用equals进行比较的示例

小编给大家分享一下java中使用equals进行比较的示例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

在对java字符串的比较上,我们要在String类中寻求解决的方法,这里要先对String的特点有所了解,因为equals()比较字符串相等的方法就是特点之一。全部特点已经罗列了出来,我们掌握了这个知识点后,下一步分析equals的使用,最后对字符串是否相等进行比较。

1.String类的特点

(1)String类对象的相等判断使用equals()方法完成,“==”实现的是地址数值的比较。

(2)字符串内容一旦声明则不可改变,String类对象内容的改变是依靠引用关系的变更实现的。

(3)String类有两种实例化方式,使用直接赋值可以不产生垃圾空间,并且可以自动入池,不要使用构造方法完成。

2.equals比较两个字符串是否相等

String类型重写了Object中的equals()方法,equals()方法需要传递一个Object类型的参数,在比较时会先判断两个对象的地址是否相同,如果是则返回true,否则通过instanceof判断是否为String类型,如果不是String类型则直接返回false,当判断参数为String类型之后,会循环对比两个字符串中的每一个字符,当两个字符串全部字符都相等时返回true,否则返回false。

public boolean equals(Object anObject) {
        if (this == anObject) {
            return true;
        }
        if (anObject instanceof String) {
            String anotherString = (String)anObject;
            int n = value.length;
            if (n == anotherString.value.length) {
                char v1[] = value;
                char v2[] = anotherString.value;
                int i = 0;
                while (n-- != 0) {
                    if (v1[i] != v2[i])
                        return false;
                    i++;
                }
                return true;
            }
        }
        return false;
}

以上是“java中使用equals进行比较的示例”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!