代码部分
/**
* @author liqiming
* @date 2021-5-30 -17:15
*
*
* contains 方法详解
*
*
* contains 方法比较的是内容,虽然集合里面存储的是对象的内存地址,但是用contains方法比价的s
* 时候比较的是内容
*
* 但是用等号比价的时候,比较的是内存地址,
* 这里contains方法调用了equals方法,这个equals方法被String 的方法重写了,所以
* 自然而然的比较的是内容
*
* 所以放在集合里面的类,需要重写equals方法,否则contains方法会经常的失效而错误
*/
public class ContainsTest {
public static void main(String[] args){
String s2="张三";
String s3=new String("李四");
Collection c=new LinkedList();
Collection c2=new HashSet();
c2.add(s2);
c2.add(s3);
String x="张三";
s2="王五";
HashSetTest.collectionIterator(c2);
System.out.println( c2.contains(x));