您的位置:首页 > 其它

list remove泛型问题-----毕业设计遇到的问题综合总结

2013-05-11 17:27 555 查看
public class Cat {

String name; //名字

String master; //主人名

public Cat(String name) {

this.name = name;

}

public Cat(String name,String master){

this.name = name;

this.master = master;

}

public String getName() { return name;}

public String getMaster() {return master;}

public String toString() {return name + " " + master;} //重写 toString()方法;

public boolean equals(Cat cat) {

if(cat.name.equals(this.name)&&cat.master.equals(this.master)) return true;

else return false;

} //重写equals()方法

}

import java.util.*;

public class Test3 {

public static void main(String[] args) {

Collection c = new ArrayList();

Cat n1 = new Cat("mimi","Mary");

c.add("abc");

c.add(new Integer(900));

c.add(n1); //添加元素

System.out.println(c); //打印 :[abc, 900, mimi Mary]

c.remove("abc");

c.remove(new Integer(900));//删除两个元素

System.out.println(c); //打印 :[mimi Mary]

System.out.println(n1.equals(new Cat("mimi","Mary")));//测试equals()方法 打印 : true

Cat n2=
new Cat("mimi","Mary");

c.remove(n2); //删除n1

System.out.println(c); //打印 :[mimi Mary]这里的原因

}

}

=========================涉及到一个泛型问题====================================================

会调用object的类型的equals方法 因此需要这样做

ArrayList<Cat> list=new ArrayList<Cat>();这样才会调用Cat的equals方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: