Java集合类系列2--Collection之List和Set简单介绍
发布日期:2021-06-30 11:37:31
浏览次数:2
分类:技术文章
本文共 1939 字,大约阅读时间需要 6 分钟。
目录:
三种集合解析
我觉得学习Java集合最重要的还是List,Set和Map,我们要对这三种集合有一个非常清楚的认识,都是存放数据对象,Map区别两者存放的是含有映射关系的对象就是key-value的形式,list集合存放的数据是有序的,我们说LIst列表,列表肯定是有顺序的,既然有顺序所以list允许数据重复,而set存放的数据是无序的,这就规定了set集合的对象不允许重复,如果重复则系统无法准确识别这个元素
如果访问List里面的元素我们可以通过索引,因为list集合存放的数据有序,如同数组,如果要访问Map集合中的数据我们可以通过key来访问其value,但是如果我,们要访问Set集合中的数据就只能通过元素本身来访问了。
Collection介绍
Collection接口是List和Set的父接口,是一个高度抽象出来的集合,Collection中含有的各种方法都可以在List和Set中被调用。Cllection中包含的方法无非就是添加对象,删除对象,清空容器,判断容器是否为空等,因为集合就像容器盛装东西,就是往里面添加删除等。集合类就为这些功能提供了对应的方法。
List和Set
list和set都是collection的子接口,在collection中的方法list和set都可以使用,list是有序的,更加像是数组,每一个元素都有对应的索引,而set是无序的,因此要求数据不能重复。
我们学习Java集合最重要的还是学习他们的使用方法,那么下面我们就来看看List和Set的具体用法吧
在我看来无论是List还是Set都可以单独拿出来讲,因为他们每一个都包括很多内容,就比如List,我们在使用的时候不能直接创建List对象,要使用他的ArrayList等!
我们先看List的基本用法:
List
以前当我们想要存放多个数据的时候我们会选择使用数组,举个例子
String[] student = {"张三","李四","王二","麻子"};
如上我们创建了一个学生类的字符串数组,也就是这个student对象中存放着“张三,李四,王二,麻子”这几个数据。那如果我们要是使用List该如何完成上述功能呢?我们可以这样做。
新建List对象,这里我们使用ArrayList(后面会详细讲解)
List<String> list = new ArrayList<String>();
这里我们就新建了一个list集合,我们之前说过,集合就是用来盛装数据的,那么我们如何添加数据呢?这里我们使用到一个方法add。
list.add("张三");
list.add("李四");
list.add("王二");
list.add("麻子");
如此一来我们就实现了跟上述数组一样的功能了
Set
我们了解了list的用法,那么set呢?其实他们两个几乎一样
Set<String> set = new HashSet<String>();
是不是很相似呢?接下来我们来看看实际应用到编程的代码吧!
public static void main(String[] args) { //创建list对象 List以下是运行结果list = new ArrayList (); //添加数据 list.add("张三"); list.add("李四"); list.add("王二"); list.add("麻子"); //来一个华丽分割线 System.out.println("--------list--------"); //遍历集合元素 list.forEach((String name)-> System.out.println("name"+name)); //创建set对象 Set set = new HashSet (); //添加数据 set.add("张三"); set.add("李四"); set.add("王二"); set.add("麻子"); //再来一个华丽的分割线 System.out.println("--------set--------"); //遍历集合 set.forEach((String name)->System.out.println(name));}
注:代码中的ArrayList和HashSet以及集合的遍历会另外详细讲解,此篇只做简单介绍,面相初学者我们由浅到深!
转载地址:https://ithuangqing.blog.csdn.net/article/details/77774355 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2024年04月04日 23时49分15秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
location区段
2019-04-30
nginx访问控制、基于用户认证、https配置
2019-04-30
用zabbix监控nginx
2019-04-30
rewrite和if语句
2019-04-30
nginx实现负载均衡和动静分离
2019-04-30
SaltStack
2019-04-30
Packer 如何将 JSON 的配置升级为 HCL2
2019-04-30
Ubuntu 安装 NTP 服务
2019-04-30
NeoFetch - Linux 使用命令行查看系统信息
2019-04-30
Jenkins 控制台输出中的奇怪字符
2019-04-30
Linux添加系统调用
2019-04-30
ubuntu 18 CTF 环境搭建
2019-04-30
linux内存的寻址方式
2019-04-30
[off by null + tcache dup]lctf_easy_heap
2019-04-30
[pie+libc]national2021_pwny
2019-04-30
task_struct 结构分析
2019-04-30
Linux创建进程的源码分析
2019-04-30
ubunut16.04的pip3出现问题,重新安装pip3
2019-04-30