【 java 集合】Collection 接口中的常用方法

news2024/11/14 14:50:07

📋 个人简介

  • 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者。😜
  • 📝 个人主页:馆主阿牛🔥
  • 🎉 支持我:点赞👍+收藏⭐️+留言📝
  • 📣 系列专栏:java 小白到高手的蜕变🍁
  • 💬格言:要成为光,因为有怕黑的人!🔥
    请添加图片描述

目录

    • 📋 个人简介
  • 前言
    • Collection 接口中的常用方法
      • 添加
      • 求长度
      • 判断当前集合是否为空
      • 清空集合元素
      • 判断当前对象是否在集合中
      • 移除
      • 判断相等
      • 集合转换为数组
      • 数组转换为集合
  • 结语

前言

本节将大概用代码案例简单总结一下 Collection 接口中的一些方法,我们会以他的实现类 Arraylist 为例创建对象。一起来看看吧!

Collection 接口中的常用方法

添加

import java.util.ArrayList;
import java.util.Collection;

/**
 * @Author:Aniu
 * @Date:2022/12/4 16:19
 * @description TODO
 */
public class Demo {
    public static void main(String[] args) {
        Collection coll = new ArrayList();
        // add(Object e) 增加
        coll.add("aniu");
        coll.add(123); //自动装箱
        coll.add(new String("miao"));
        System.out.println(coll);
        System.out.println("------------------");
        // addAll() 将另一个集合中的元素添加到当前集合中
        Collection coll1 = new ArrayList();
        coll1.add(123);
        coll1.add("bb");
        coll.addAll(coll1);
        System.out.println(coll);
    }
}

在这里插入图片描述

求长度

// size() 求添加的元素个数
 Collection coll = new ArrayList();
 coll.add("aniu");
 coll.add(123); //自动装箱
 coll.add(new String("miao"));
 System.out.println(coll.size());

判断当前集合是否为空

Collection coll = new ArrayList();
coll.add("aniu");
coll.add(123); //自动装箱
coll.add(new String("miao"));
//isEmpty() 判断当前集合是否为空
System.out.println(coll.isEmpty());

清空集合元素

Collection coll = new ArrayList();
coll.add("aniu");
coll.add(123); //自动装箱
coll.add(new String("miao"));
//clear() 清空集合元素
System.out.println(coll.clear());

判断当前对象是否在集合中

Collection coll = new ArrayList();
coll.add("aniu");
coll.add(123); //自动装箱
coll.add(new String("miao"));
// contains() 判断对象是否在当前集合中
System.out.println(coll.contains(new String("aniu")));

这里要注意的是,contains本质上是用equals比较的,因此,对于自定义对象,要记得重写equals方法!

Collection coll = new ArrayList();
coll.add("aniu");
coll.add(123); //自动装箱
coll.add(new String("miao"));
Collection coll1 = new ArrayList();
coll1.add(123);
coll1.add("aniu");
// containsAll() 判断形参集合中的元素是否在当前集合中
System.out.println(coll.containsAll(coll1));

本质上依旧是用equals一个个比较

移除

Collection coll = new ArrayList();
coll.add("aniu");
coll.add(123); //自动装箱
coll.add(456);
coll.add(new String("miao"));
// remove() 移除
coll.remove(123);
System.out.println(coll);
System.out.println("------------");

Collection coll1 = new ArrayList();
coll1.add(456);
coll1.add(new String("miao"));
// removeAll() 从当前集合中移除形参集合中的所有元素,即差集
coll.removeAll(coll1);
System.out.println(coll);

在这里插入图片描述

removeAll() 相当于求差集,那么也有对应求交集的!

Collection coll = new ArrayList();
coll.add("aniu");
coll.add(123); //自动装箱
coll.add(new String("miao"));
Collection coll1 = new ArrayList();
coll1.add(123);
coll1.add(new String("miao"));
// retainAll() 即求交集
coll.retainAll(coll1);
System.out.println(coll);

在这里插入图片描述

判断相等

Collection coll = new ArrayList();
coll.add("aniu");
coll.add(123); //自动装箱
Collection coll1 = new ArrayList();
coll1.add(123);
coll.add("aniu");
// equals() 判断两个集合是否相等,因为这里使用ArrayList()实现,因此要考虑顺序
System.out.println(coll.equals(coll1));

在这里插入图片描述

集合转换为数组

Collection coll = new ArrayList();
coll.add("aniu");
coll.add(123); //自动装箱
// toArray() 集合转数组
Object[] arr = coll.toArray();
System.out.println(Arrays.toString(arr));

数组转换为集合

既然说到了集合转数组,这里就说一下数组转集合!

 List list = Arrays.asList(new String[]{"aniu", "tom"});
 System.out.println(list);

结语

本来关于这些api是不想总结的,像String中的一些api,和其他语言中的差不多,我就没总结!集合中的方法名与其他语言稍微有不同,这里快速过一下。

如果你觉得博主写的还不错的话,可以关注一下当前专栏,博主会更完这个系列的哦!也欢迎订阅博主的其他好的专栏。

🏰系列专栏
👉软磨 css
👉硬泡 javascript
👉flask框架快速入门

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/61728.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LeetCode刷题复盘笔记—一文搞懂纯完全背包问题(动态规划系列第十一篇)

今日主要总结一下动态规划背包问题的基础——纯完全背包问题 在Leetcode题库中主要都是0-1背包和完全背包的应用问题,所以主要掌握这两个背包问题 题目:纯完全背包问题 题目描述: 有N件物品和一个最多能背重量为W的背包。第i件物品的重量是w…

List——顺序表与链表(二)

文章目录前言一、链表概念及结构二、LinkedList与链表1.什么是LinkedList2.LinkedList的常用方法3.链表的遍历三.实现自己的LinkedList四.ArrayList和LinkedList的区别与优缺点总结前言 上一篇文章中,介绍了List接口以及ArrayList的使用,并且进行了简单…

ByteTrack多目标追踪论文阅读

paper:ByteTrack: Multi-Object Tracking by Associating Every Detection Box code:ByteTrack 一.摘要 多目标追踪的目的是识别视频中物体或对象的位置和身份,也就是说,不同于目标检测的是,追踪问题可以分为两个任务:1&#x…

(附源码)springboot平衡膳食小程序 毕业设计 250859

基于springboot平衡膳食小程序 摘 要 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,平衡膳食小程序被用户普遍使…

物联网设备WIFI模块实现

问题 如何在设备上进行 Wifi 编程? LwIp (Light Weight IP) 简介 LwIp 是轻量化的 TCP/IP,是一个小型开源的 TCP/IP 协议栈 LwIp 的设计目标是用较少的资源实现较完整的 TCP/IP 协议栈 LwIp 能在操作系统中运行,也能在无操作系统的情况下…

Java—异常体系

文章目录异常和错误java异常的分类:非运行时异常运行时异常受检异常(非运行时异常)如何处理?1、try catch finally为什么要用try catch finally2、throwsThrow和Throws的区别JVM是如何处理异常的try-catch-finally中哪个部分可以省…

项目管理逻辑:项目经理如何掌控项目生命周期, 才能避免身心俱疲?

目录 1.项目生命周期 2.预测型项目周期 3.迭代型项目周期 3.1.初始阶段 3.2.精化阶段 3.3.构建阶段 3.4.交付阶段 4.增量型生命周期 5.敏捷开发 5.根据具体项目使用合理的开发方式 1.项目生命周期 2.预测型项目周期 预测型项目周期就是软件开发领域的瀑布流模型&…

【Python自然语言处理】概率上下文无关文法(PCFG)及神经网络句法分析讲解(图文解释 超详细)

觉得有帮助或有疑问麻烦点赞关注收藏后评论区私信留言~~~ 一、句法分析 句法分析(syntactic parsing或者parsing)是识别句子包含的句法成分要素以及成分之间的内在关系,一般以句法树来表示句法分析的结果。实现该过程的应用称作句法分析器&a…

三维模型的简化算法研究(任务书+lunwen+外文翻译+源码+查重报告)

目 录 第1章 绪论 1 1.1 研究背景 1 1.2 内存网格简化算法 1 1.2.1 顶点聚类 1 1.2.2 区域合并 2 1.2.3 迭代式消除 4 1.2.4 随机重采样 5 1.3 三维模型简化算法 6 1.3.1 分片简化 6 1.3.2 使用外部数据结构 7 1.3.3 网格批处理 9 1.3.4 流式简化 10 1.3.5 小结 11 1.4 自适应等…

【前沿技术RPA】 一文了解UiPath Orchestrator的触发器和监听器

🐋作者简介:博主是一位.Net开发者,同时也是RPA和低代码平台的践行者。 🐬个人主页:会敲键盘的肘子 🐰系列专栏:UiPath 🦀专栏简介:UiPath在传统的RPA(Robotic…

公众号接口免费调用

公众号接口免费调用 本平台优点: 多题库查题、独立后台、响应速度快、全网平台可查、功能最全! 1.想要给自己的公众号获得查题接口,只需要两步! 2.题库: 题库:题库后台(点击跳转)…

Express:CORS 跨域资源共享

CORS 跨域资源共享 Staticfile CDN 1. 接口的跨域问题 刚才编写的 GET 和 POST接口,存在一个很严重的问题:不支持跨域请求。 解决接口跨域问题的方案主要有两种: 1.CORS(主流的解决方案,推荐使用) 2.J…

Excel - 选择性粘贴和单元格引用规则

最基本的功能,才是最重要的功能,一定好好好理解。 最常用的复制、粘贴功能,在Excel里赋予了更多的选项,也变得更加强大。Excel里一般可复制的内容都是只单元格区域,其组成包括数据(文本或数值)、格式、公式、有效性验证…

FileZilla Server.xml 如何配置

要从xp.cn说起,因为它自带了一个ftp服务器。我点击配置后,就会直接用记事本打开FileZilla Server.xml让配置。我就很懵。不知道如何下手。 弹出的配置界面如下: 如何配置FileZilla Server.xml 我一开始想到去xp.cn找文档,可惜…

初探基因组组装——生信原理第四次实验报告

初探基因组组装——生信原理第四次实验报告 文章目录初探基因组组装——生信原理第四次实验报告实验目的实验内容实验题目第一题题目用SOAPdenovo 进行基因组组装评估组装质量第二题题目Canu组装Hifiasm组装基于nucmer的基因组比对过滤比对结果转换为可读性强的tab键分隔的文件…

期末论文LaTeX模板

简介 这学期的其中一门课程结束了,考核形式是写一篇中文的课程论文。于是,我使用了Elegant LaTeX 系列的模板。 小编已经把最新版本的三份模板放到公众号,后台回复[课程论文模板]即可获取。也欢迎大家去 GitHub 给贡献者点 star!…

【从零开始玩量化13】quantstats:分析你的量化策略

背景 之前总结了一些获取量化数据的途径,数据是一个量化策略的“原材料”,接下来要考虑的问题就是如何使用这些数据。 本文,介绍一个量化指标分析工具quantstats,利用它可以很方便的分析你的策略。 Github地址:https…

[附源码]计算机毕业设计校园帮平台管理系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【5G MAC】随机接入流程中的 Msg3 —— Scheduled UL (PUSCH) Transmission

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持! 博主链接 本人就职于国际知名终端厂商,负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。 博客…

机器学习數據降維之主成分分析(PCA)

文章目录前言数据降维是什么?维度灾难与降维作用主成分分析PCA原理PCA算法小例實戰總結前言 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容…