java的equals和contains()的区别:
1、功能不同
equals指示其他某个对象是否与此对象“相等”。
contains当且仅当此字符串包含指定的 char 值序列时,返回 true。
2、用法不同
equals实现对象上差别可能性最大的相等关系;即,对于任何非空引用值 x 和 y,当且仅当 x 和 y 引用同一个对象时,此方法才返回 true(x == y 具有值 true)。
contains常用与集合中判断某个对象是否含有这个元素。
3、含义不同
equals是比较两个东西是否等同,适用于任何类别的对象。
contains是是否包含的意思,左边的对象是一个容器了。
4、参数不同
equals参数为obj - 要与之比较的引用对象。
contains参数为s - 要搜索的序列。
参考资料来源:百度百科——equals
百度百科——contains()
equals是判断字符串的是不是相等,例如:"abc".equals("abc"),返回结果是Boolean类型的true
"abc".equals("ab")返回结果是Boolean类型的false
contains是包含的意思,例如:"abc".contains("a"),返回结果是Boolean类型的true
"abc".contains("d"),返回结果是Boolean类型的false.
contains包含包括,"abc".contains("abcd")是返回的false
只要记得equals用在判断字符串相等的时候。如果你不能确定他们是否为空。你还要判断!=null,==号不能用来判断字符串是否一样。
Java运行环境有一个字符串池,由String类维护。执行语句String str="abc"时,首先查看字符串池中是否存在字符串"abc",如果存在则直接将"abc"赋给str,如果不存在则先在字符串池中新建一个字符串"abc",然后再将其赋给str。
java中equals和==的区别 值类型是存储在内存中的堆栈(简称栈),而引用类型的变量在栈中仅仅是存储引用类型变量的地址,而其本身则存储在堆中。
quals操作表示的两个变量是否是对同一个对象的引用,即堆中的内容是否相同。
==比较的是2个对象的地址,而equals比较的是2个对象的内容,显然,当equals为true时,==不一定为true。
equals()是object的方法,所以只是适合对象,不适合于基本类型,equals()默认是用"=="比较两个对象的内存地址。
于所有的类都是继承自java.lang.Object类的,所以如果没有对该方法进行覆盖的话,调用
的仍然是Object类中的方法,而Object中的equal方法返回的却是==的判断。
答非所问~垃圾