文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

怎么在Java中利用Contains和Remove实现集合

2023-06-06 14:38

关注

本篇文章给大家分享的是有关怎么在Java中利用Contains和Remove实现集合,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

一、包含与删除两种方法解析

1.boolean contains(Object o);判断集合中是否包含某个元素。

package com.bjpowernode.java_learning;import java.util.*;public class D85_1_ContainsMethod { public static void main(String[] args) { //创建集合 Collection c = new ArrayList(); //创建两个Integer类型的对象 Integer i1 = new Integer(10); //添加元素 c.add(i1); //判断集合中是否包含11 System.out.println(c.contains(i1)); ///创建Integer类型的对象 Integer i2 = new Integer(10); System.out.println(c.contains(i2)); //这里包含了i2说明了,contains底层调用了equals方法。如果equals返回了true,就是包含  Manager85 m1 = new Manager85(52,"jho"); c.add(m1); Manager85 m2 = new Manager85(52,"jho"); System.out.println(c.contains(m2));  }}class Manager85{ int no; String name; Manager85(int no,String name){ this.no = no; this.name = name; } public boolean equals(Object o){ if(this==o) return true; if(o instanceof Manager85) {  Manager85 m = (Manager85)o;  if(this.no==m.no && this.name.equals(m.name)){  return true;  } } return false; } //总结创建一个类,要重写equals方法,才能对类中的数据进行对比,否则继承原来的equals只能是对比对象的地址}

怎么在Java中利用Contains和Remove实现集合

2.boolean remove(Object o);删除集合中某个元素。

总结:从这两次输出的结果就可以看出来,remove方法与contains方法在用法上是一致的

他们的底层全部都调用了equals方法来进行比较,因为在使用这个方法的时候,必须保证我们的原始类中equals方法已经被重写,否则就会得到意想不到的结果。

package com.bjpowernode.java_learning;import java.util.*;public class D85_2_RemoveMethod { public static void main(String[] args) { //创建集合对象 Collection c = new ArrayList();  Integer i1 = new Integer(10); //添加元素 c.add(i1); //删除 Integer i2 = new Integer(10); c.remove(i2);  System.out.println(c.size()); Manager85 m1 = new Manager85(10,"ji"); c.add(m1); Manager85 m2 = new Manager85(10,"ji"); c.remove(m2); System.out.println(c.size()); }}

怎么在Java中利用Contains和Remove实现集合

二、深入remove方法

(1)迭代器的remove方法;

(2)集合自身的remove方法

package com.bjpowernode.java_learning;import java.util.*;import java.lang.Iterable;public class D85_3_DeepIntoRemoveMethod { public static void main(String[] args) { Collection c = new ArrayList(); c.add(1);//这里复习了自动装箱,int类型直接转化为Integer类型 c.add(2); c.add(3); //遍历 Iterator it = c.iterator(); while(it.hasNext()) {  Object element = it.next();  //删除  it.remove();//通过迭代器的remove方法删除 } System.out.println(c.size()); Collection c2 = new ArrayList(); c2.add(1);//这里复习了自动装箱,int类型直接转化为Integer类型 c2.add(2); c2.add(3); Iterator it2 = c2.iterator(); while(it2.hasNext()) {  Object element = it2.next();  c2.remove(element); }  }}

怎么在Java中利用Contains和Remove实现集合

以上就是怎么在Java中利用Contains和Remove实现集合,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯