集合-Collection

news2024/11/30 8:42:36

系列文章目录

1.集合-Collection-CSDN博客


文章目录

目录

系列文章目录

文章目录

前言

一 . 集合的继承体系

二 . 什么是Collection?

三 . 常用方法

1.add(Object element): 将指定的元素添加到集合中。

2. remove(Object element): 从集合中移除指定的元素。

3. boolean contains(Object element): 判断集合中是否包含指定的元素。

总结


前言

大家好,今天总结一下集合相关的内容。


一 . 集合的继承体系


二 . 什么是Collection?

Collection 是一个 Java 接口,它是 Java 集合框架中的一部分。它代表了一组对象,这些对象被称为集合元素。Collection 接口提供了对集合进行操作的方法,例如添加、删除、遍历等。

Collection 接口的实现类包括 List、Set 和 Queue。List 是一个有序的集合,允许重复元素;Set 是一个不允许重复元素的集合;Queue 是一个先进先出的集合。

Collection 接口定义了一些常用的方法,如 add()、remove()、contains()、size() 等。它还继承了 Iterable 接口,因此可以使用迭代器来遍历集合中的元素。

使用 Collection 接口可以方便地对一组对象进行管理和操作,它提供了许多常用的集合操作方法,可以简化开发过程。


三 . 常用方法

  1. boolean add(Object element): 将指定的元素添加到集合中。
  2. boolean remove(Object element): 从集合中移除指定的元素。
  3. boolean contains(Object element): 判断集合中是否包含指定的元素。
  4. int size(): 返回集合中元素的数量。
  5. boolean isEmpty(): 判断集合是否为空。
  6. clear(): 清空集合中的所有元素。
  7. iterator(): 返回一个迭代器,用于遍历集合中的元素。
  8. toArray(): 将集合转换为一个数组。
  9. addAll(Collection collection): 将指定集合中的所有元素添加到当前集合中。
  10. removeAll(Collection collection): 从当前集合中移除与指定集合中相同的元素。
  11. retainAll(Collection collection): 保留当前集合与指定集合中相同的元素,移除其他元素。
  12. containsAll(Collection collection): 判断当前集合是否包含指定集合中的所有元素。
  13. equals(Object object): 判断当前集合是否与指定对象相等。
  14. hashCode(): 返回当前集合的哈希码值。

1.add(Object element): 将指定的元素添加到集合中。

add方法返回值为boolean类型,当添加集合中已经存在的元素时,返回值会有两种情况,大家可以猜猜看,最后输出什么

// collection是一个接口,不能直接实例化对象,需要new一个其实现类的对象进行向上转型
Collection<String> coll1 = new ArrayList<>();
Collection<String> coll2 = new HashSet<>();

System.out.println(coll1.add("a"));
System.out.println(coll1.add("a"));
System.out.println(coll2.add("a"));
System.out.println(coll2.add("a"));

细节:

List系列集合: 添加的元素有序,可重复,有索引

Set系列集合特点: 添加的元素无序,不可重复,无索引

2. remove(Object element): 从集合中移除指定的元素。

1.因为collection中定义的是共性的方法,因此不能通过索引来删除,只能通过元素的对象进行删除

2.方法删除成功返回true,删除失败返回false

3. boolean contains(Object element): 判断集合中是否包含指定的元素。

返回值没什么好说的,带大家看一下源码

如果不重写eauals方法,则默认使用Object中的equals方法,因为Object是所用类的父类,自定义对象默认继承Object,所以使用的是Object类中的equals方法,该equals方法默认比较的是地址值


总结

大家好好理解,下一篇博客见

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

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

相关文章

国庆day1---消息队列实现进程之间通信方式代码,现象

snd&#xff1a; #include <myhead.h>#define ERR_MSG(msg) do{\fprintf(stderr,"__%d__:",__LINE__);\perror(msg);\ }while(0)typedef struct{ long msgtype; //消息类型char data[1024]; //消息正文 }Msg;#define SIZE sizeof(Msg)-sizeof(long)int main…

HP E1740A 模拟量输入模块

HP&#xff08;惠普&#xff09;E1740A 模拟量输入模块是一种用于数据采集和测量的工控模块&#xff0c;通常用于各种自动化和监测应用中。以下是该模拟量输入模块的一些可能特点和功能&#xff1a; 多通道输入&#xff1a; E1740A 模块通常具有多个模拟量输入通道&#xff0c;…

windows的arp响应

1.原理‘ 2.场景 3.步骤

YOLOv8+swin_transfomerv2

测试环境&#xff1a;cuda11.3 pytorch1.11 rtx3090 wsl2 ubuntu20.04 踩了很多坑&#xff0c;网上很多博主的代码根本跑不通&#xff0c;自己去github仓库复现修改的 网上博主的代码日常出现cpu,gpu混合&#xff0c;或许是人家分布式训练了&#xff0c;哈哈哈 下面上干货…

Android回收视图

本文所有代码均存放于https://github.com/MADMAX110/BitsandPizzas 回收视图是列表视图的一个更高级也更灵活的版本。 回收视图比列表视图更加灵活&#xff0c;所以需要更多设置&#xff0c;回收视图使用一个适配器访问它的数据&#xff0c;不过与列表视图不同&#xff0c;回收…

[RCTF2015]EasySQL 二次注入 regexp指定字段 reverse逆序输出

第一眼没看出来 我以为是伪造管理员 就先去测试管理员账号 去register.php 注册 首先先注册一个自己的账号 我喜欢用admin123 发现里面存在修改密码的内容 那么肯定链接到数据库了 题目又提示是sql 那我们看看能不能修改管理员密码 首先我们猜测闭合 通过用户名 admin…

HTML,CSS,JavaScript知识点

HTML&#xff0c;CSS&#xff0c;JavaScript知识点 HTML篇 HTML是超文本标记语言。文件以.html结尾。 Hello,HTML。常用的工具: 标题: <h1>一级标题</h1><h2>二级标题</h2><h3>三级标题</h3><h4>四级标题</h4>无序列表和有…

YOLOv8+swin_transfomer

测试环境&#xff1a;cuda11.3 pytorch1.11 rtx3090 wsl2 ubuntu20.04 本科在读&#xff0c;中九以上老师或者课题组捞捞我&#xff0c;孩子想读书&#xff0c;求课题组师兄内推qaq 踩了很多坑&#xff0c;网上很多博主的代码根本跑不通&#xff0c;自己去github仓库复现修…

PHP免登录积分商城系统/动力商城/积分商城兑换系统源码Tinkphp

介绍&#xff1a; PHP免登录积分商城系统/动力商城/积分商城兑换系统源码Tinkphp&#xff0c;这个免登录积分商城系统是一种新型的电子商务模式&#xff0c;它通过省去麻烦的注册步骤&#xff0c;让用户能够很快又方便去积分兑换。这种商城系统具有UI干净整洁大方、运行顺畅的…

正点原子嵌入式linux驱动开发——STM32MP1启动详解

STM32单片机是直接将程序下载到内部 Flash中&#xff0c;上电以后直接运行内部 Flash中的程序。 STM32MP157内部没有供用户使用的 Flash&#xff0c;系统都是存放在外部 Flash里面的&#xff0c;比如 EMMC、NAND等&#xff0c;因此 STM32MP157上电以后需要从外部 Flash加载程序…

Mendix中的依赖管理:npm和Maven的应用

序言 在传统java开发项目中&#xff0c;我们可以利用maven来管理jar包依赖&#xff0c;但在mendix项目开发Custom Java Action时&#xff0c;由于目录结构有一些差异&#xff0c;我们需要自行配置。同样的&#xff0c;在mendix项目开发Custom JavaScript Action时&#xff0c;…

调度算法2-适用于交互式系统

一、时间片轮转调度算法(RR) 1.算法思想 Round-Robin 公平、轮流地为各个进程服务&#xff0c;让每个进程在一定时间间隔内都可得到响应 2.算法规则 按照各进程到达就绪队列的顺序&#xff0c;轮流让各个进程执行一个时间片 响应比(等待时间要求服务时间)/要求服务时间 3…

http请求报错:406 Not Acceptable的解决办法

目录 应用场景 基本概念 解决方法 方法一&#xff1a; 方法二&#xff1a; 方法三&#xff1a; 应用场景 接口在返回结果集的时候出现了406的报错&#xff0c;但是返回String类型不会报错&#xff0c;正常返回。 基本概念 406 Not Acceptable是一个HTTP响应状态码&…

Vue+ElementUI实现动态树和表格数据的分页模糊查询

目录 前言 一、动态树的实现 1.数据表 2.编写后端controller层 3.定义前端发送请求路径 4.前端左侧动态树的编写 4.1.发送请求获取数据 4.2.遍历左侧菜单 5.实现左侧菜单点击展示右边内容 5.1.定义组件 5.2.定义组件与路由的对应关系 5.3.渲染组件内容 5.4.通过动态…

Spring整合第三方框架

目录 Spring整合第三方框架 加载外部properties文件 自定义命名空间解析原理 自定义命名空间总结和案例需求 总结 案例 Spring整合第三方框架 加载外部properties文件 Spring整合第三方框架不像MyBatis那么简单了&#xff0c;例如Dubbo框架在与Spring框架整合时&#xf…

苹果CMS插件-苹果CMS全套插件免费

网站内容的生成和管理对于网站所有者和内容创作者来说是一个挑战。有一些强大的工具可以帮助您轻松地解决这些问题。苹果CMS插件自动采集插件、采集发布插件以及采集伪原创发布插件&#xff0c;是这些工具之一。它们不仅可以极大地节省您的时间和精力&#xff0c;还可以提高您网…

Python编码规范与代码优化

博主&#xff1a;命运之光 专栏&#xff1a;Python程序设计 Python编码规范 Python的程序由包、模块&#xff08;即一个Python文件&#xff09;、函数、类和语句组成 (1) 命名规则 变量名、包名、模块名通常采用小写字母开头&#xff0c;如果名称中包含多个单词&#xff0c;一…

【Axure】Axure的常用功能

选择 分为相交选中和包含选中 相交选中&#xff1a;部分选中即是选中包含选中&#xff1a;全选才是选中 缩放 按住元件四角&#xff0c;等比例缩放 置顶和置底 所谓置于顶层就是不被后来的元件覆盖住&#xff0c;置于底层的意思则相反 组合、对齐、分布 组合&#xff1…

redis主从从,redis-7.0.13

redis主从从&#xff0c;redis-7.0.13 下载redis安装redis安装redis-7.0.13过程报错1、没有gcc&#xff0c;报错2、没有python3&#xff0c;报错3、[adlist.o] 错误 127 解决安装报错安装完成 部署redis 主从从结构redis主服务器配置redis启动redis登录redisredis默认是主 redi…

【CMU15-445 Part-13】Query Execution II

Part13-Query Execution II talk about how to execute with multiple workers TCO&#xff1a;Total Cost of Ownship Parallel VS. Distributed 区分数据库系统的并行执行和分布式数据库系统的分布式执行 数据库通过分散multiple resources 来改善数据库某些方面的性能 …