contains和equals方法的区别?

时间:2025-03-17 11:02:19

前两天突然发现这两个方法搞得有点懵 ,
其实挺简单 , 根据字面意思就可以区分开.
equals( )

boolean equals(Object anObject) :将此字符串与指定的对象比较。
             通俗的说就是:判断它俩(指定元素与括号中)内容是否相等!
 
注意:
equals不能用于基本数据类型的变量!

举个简单的小例子说明下:

public class Demo01 {
    public static void main(String[] args) {
        // 判断 "lisi" 是否和 "list" 相等 .
        boolean equals = "lisi".equals("list");
        (equals); // false - 不相等

	 // 判断 "list" 是否和 "list" 相等 .
	 boolean equals2 = "list".equals("list");
        (equals2); // true - 相等
    }
}

contains()

String类中的contains:
         boolean contains(CharSequence s) : 当且仅当此字符串包含指定的 char 值序列;
                                             字面意思就是:判断指定内容中是否包含括号中的内容;
Collection集合中的contains():
         boolean contains(Object o) 判断 集合中 是否 包含指定的元素

举个简单的小例子说明下:

public class Demo01 {
    public static void main(String[] args) {
        // "list" 中是否包含 "li"
        boolean c1 = "list".contains("li");
        (c1); // list中包含i --  true

        boolean c2 = "list".contains("l");
        (c2); // list中包含i --  true   
        
        // -------------------------------------------
		// 创建一个数据 , 并添加数据 .
        ArrayList<String> list = new ArrayList<>();
        ("aaa");
        ("bbb");
        ("ccc");
        ("dad");

        // 判断集合中是否包含指定元素.
        boolean b = ("aaa");
        (b); // true 
    }
}

总结:
       contains就是包含(abc中包含a)
       equals就是相等(完全一样).

注:
     一般推荐吧常量字符串写在前面 , 变量写在后面.