java 集合(1)equals 和 ArrayList的remove 联系 && instanceof 关键字
2015-12-28 20:41
501 查看
1.Object 的equals()是 == ,即纯相等
2.String Integer的equals(),是被改写的,即值相等
3.ArrayList的remove(),是判断是否equals(), 即Object 的,那么
4.泛型作用
上面程序改为
ArrayList c = new ArrayList<Iplong>();
c.add("hello");//可以执行,但是下面这句add()不能正常执行
ArrayList <Iplong> c = new ArrayList<Iplong>();
c.add("hello");
c.add(new Iplong("li","jialia"));
如果想直接删掉这个对象,可以重写object 类的 equals() 方法
也可以用引用而不是匿名对象
这里的equals方法和hashcode方法有关系,暂时不明?hashcode可以参考java
hashcode这篇文章
2.String Integer的equals(),是被改写的,即值相等
3.ArrayList的remove(),是判断是否equals(), 即Object 的,那么
4.泛型作用
Collection c = new ArrayList<Iplong>(); c.add("hello"); //这句可以正常执行,但是下面这句add()不能正常执行 Collection<Iplong> c = new ArrayList<Iplong>();c.add("hello"); c.add(new Iplong("li","jia")); c.remove(new Iplong("li","jia"));以下结果是:
c.size() is 2 [hello, test.java.Iplong@5c3a5635]
上面程序改为
ArrayList c = new ArrayList<Iplong>();
c.add("hello");//可以执行,但是下面这句add()不能正常执行
ArrayList <Iplong> c = new ArrayList<Iplong>();
c.add("hello");
c.add(new Iplong("li","jialia"));
如果想直接删掉这个对象,可以重写object 类的 equals() 方法
//remove 谁,就是collection里的元素o,调用o.equals(谁) public boolean equals(Object obj){ if(obj instanceof Iplong){ Iplong iplong = (Iplong)obj; return firstName.equals(iplong.firstName) && lastName.equals(iplong.lastName); } return super.equals(obj); }则以上代码结果是:
c.size() is 1 [hello]
也可以用引用而不是匿名对象
Collection c = new ArrayList<Iplong>(); c.add("hello"); Iplong name1 = new Iplong("li","jia"); System.out.println(name1.hashCode());//一直在变 c.add(name1); c.remove(name1); System.out.println(c.size()); System.out.println(c);执行结果是:
1 [hello]
这里的equals方法和hashcode方法有关系,暂时不明?hashcode可以参考java
hashcode这篇文章
相关文章推荐
- java反射机制的作用与优点
- ViewPager 详解(一)---基本入门
- java及.net学习历程
- Spring自定义注解
- SpringMVC学习之实现注解式权限验证
- 表单校验---struts2
- Java对象及其引用
- spring 3.2 自定义参数绑定--日期格式转换器
- 个人学习-java-方法的重载
- Spring MVC与mybatis学习-----执行路程详解
- JAVA 死锁例子
- struts学习笔记
- [细说Java](3)创建字符串是使用" "还是构造函数?
- 深入分析JavaWeb Item36 -- 过滤器Filter高级应用
- Java中的泛型
- 第一篇 Windows环境下通过Eclipse创建的第一个安卓应用程序(图文详细步骤)
- JAVA多线程与并发学习总结
- Java垃圾回收机制
- Java垃圾回收机制算法
- java 开源资源