本帖最后由 王瑞 于 2013-3-27 12:35 编辑
ArrayListTest2中的equals,里面的接受对象为什么不直接写成person?- class Person
- {
- private String name;
- private int age;
- Person(String name,int age)
- {
- this.name = name;
- this.age = age;
- }
-
- public boolean equals(Object obj)//那为什么这里的equals(Object obj)不直接写成equals(Person p2)呢?下面就不用强制转换类型了。是为了照顾集合中万一有不是person类型的元素输入吗?
- {
- if(!(obj instanceof Person))
- return false;
- Person p = (Person)obj;//这里强制将obj转换成person类型
- return this.name.equals(p.name) && this.age == p.age;
- }
- public String getName()
- {
- return name;
- }
- public int getAge()
- {
- return age;
- }
- }
复制代码 |