JAVA学习日记每天进步一点点之集合类
集合可以看作是一个容器,集合长度可变
- 对于集合中的每一个对象都很容易被放到集合中,也很容易从集合中取出,也可以以一定的顺序排放。
- 不同的集合类有不同的数据存储的方式,并且提供相应地方法对集合进行遍历、添加和修改以及查找指定的对象。
Collection接口
通过代码学习一下简单的集合的应用
Collection<String>list=new ArrayList<>();list.add("aaaa"); //向几何中添加元素list.add("bbbb");list.add("cccc");java.util.Iterator<String> it=list.iterator(); //while(it.hasNext()){String str =(String)it.next();System.out.println(str);}
其中我们可以知道:
- Collection接口是List和Set的“父类”,Map也是一种集合类
- Collection接口的一些方法:
list.add("cccc");//增添元素list.remove("aaaa");//移走元素System.out.println(list.isEmpty());//判断是否为空System.out.println(list.size());//获得集合大小java.util.Iterator<String> it=list.iterator();//迭代器,用于遍历集合中的对象,常用的方法有next()获得集合下一个对象,hasNext()判断是否有下一个对象
List集合
集合中元素允许重复,元素的顺序就是插入的顺序。
- 两个重要的方法:get(int x)获得x位置的元素 set(int x,Object y)将x位置的对象变成y
- list的两个实现类:ArrayList(访问快,插入删除慢)和LinkedList(访问慢,插入删除块)
- 实现类的初始化:List<E(元素类型)>list=new ArrayList<>() List<E(元素类型)>list=new LinkedList<>()
Set集合
不排序,只把元素放在集合,不能有重复的元素
- 两个实现类:HashSet和TreeSet
- TreeSet的方法:first(),last():返回第一和最后一个元素
- headSet(E):返回新的Set集合,新集合为E对象之前所有的对象
- subSet(a,b):返回新的Set集合,新集合为a,b对象之间所有的对象
- tailSet(E):返回新的Set集合,新集合为E对象之后所有的对象
Map集合
没有继承Collection接口,提供key和value的映射。不能包含相同的key,每个key对应一个value
Map<String, String>map=new HashMap<>();map.put("001", "陈世豪");map.put("002", "记不得的桂纶镁");Set<String>set=map.keySet();java.util.Iterator<String> it=set.iterator();
- map常用的方法如上面的代码所示,put(设置key和value),keyset()(获得map中的key装进set集合中),values()
- map的实现类有HashMap和TreeMap(不允许元素为null)
JAVA学习日记每天进步一点点之集合类相关推荐
- Java学习日记1——基础认知
Java学习日记1--基础认知 学习Java阶段,如果发现不正确的描述,还请指正! 首先附上Java相关下载链接和配置教程链接 Java相关软件工具下载地址:官方下载 Java环境配置(win10配置 ...
- Java学习日记-Day01
Java学习日记-Day01 Java语言概述 比特(byte)与字节 内存 Java基础知识图解 人机交互方式 常用的DOS命令 常用快捷键 计算机编程语言介绍 第一代语言 第二代语言 第三代语言 ...
- 尚学堂Java学习日记Day3
尚学堂Java学习日记Day3 第三天老师先回顾了昨天的内容我从回顾中掌握了新的知识 如下图所示 int与double计算,输出类型为double的不同结果 会把int转成double类型的,这是隐式 ...
- Java学习日记:UI篇(6)--谢尔宾斯基地毯图
Java学习日记:UI篇(6)–谢尔宾斯基地毯图 引言:谢尔宾斯基地毯是数学家谢尔宾斯基提出的一个分形图形,谢尔宾斯基地毯和谢尔宾斯基三角形基本类似,不同之处在于谢尔宾斯基地毯采用的是正方形进行分形构 ...
- 【日记】Java学习日记(第63天)持续无聊更新
前言 Youtube上EJ Media(up主)的视频我依次学完了HTML.CSS.Javascript.Jquery.觉得他教得挺好的(短小精悍),就继续学他教的JAVA.感觉EJ教的都是些语法什么 ...
- 尚学堂Java学习日记Day1
尚学堂学习日记Day1 #今天开始写学习博客记录自己学习java的点滴成长历程,希望能成为学弟学妹们的前车之鉴. 先大概的自我介绍下,我原本从事的是网络工程师,学习的是Cisco(思科)并拥有CCNP ...
- Java学习日记8:文件上传工具类的实现和服务器给客户端发送图片
文件上传的工具类: 每次文件上传要写很多东西,把这些封装成一个工具类,以后用起来就会方便很多. 先创建一个类存储上传文件的信息: package com.upload; /*** 每上传成功一个文件的 ...
- 黑马程序员--Java学习日记之集合(collection类与list接口)及泛型概述
------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一,集合概念 之前我们存储大量的对象,可以使用数组: 但数组有两个缺陷: 1. ...
- 2019-06-03 Java学习日记 day24 多线程
多线程 线程是程序执行的一台路径,一个进程中可以包含多条线程 多线程并发执行可以提高程序的效率,可以同时完成多项工作 多线程的应用背景 红蜘蛛同时共享屏幕给多个电脑 迅雷开启多条线程一起下载 QQ同时 ...
最新文章
- QT代码格式化快捷键
- 从前到后的CAN总线(一)
- 暴力解决:InvocationException: GraphViz‘s executables not found
- 用ExtJs+Linq+Wcf打造简单grid
- linux增加虚拟内存
- mysql的安装包,可直接下载5.6.43
- python +appium实现原理_Appium工作原理
- 使用DAEMON Tools Ultra制作Ubuntu启动U盘全过程(含图文)
- 【IT生活】成长,没有想象的那么迫切 ——叶绍琛
- SecureCRT中文乱码解决方法
- 一张图读懂系列|量子三大特性之纠缠
- 跨省游开放首展,海峡旅博会和休闲旅博会将在厦门举行
- 计算机特定用户共享文件夹,局域网共享给特定用户、文件夹共享给指定用户访问方法...
- 如何练就超强的学习能力?这才是最好的答案
- 三年半经验,蚂蚁头条快手怎么选?网友:第一次看到头条比快手offer低的
- 微型计算机在情报检索中的应用属于什么领域,第1章-单选题
- xsy3320 string
- 金仓数据库KingbaseES SYS_BULKLOAD工具的使用
- 信道容量的迭代算法实现
- NLP-二分类的应用-区分外卖评论好评/差评
热门文章
- [新奇周边] 内置2400mAh电量 可以充电的手机壳上市【转载:今日头条】
- 适合婚礼唱的流行歌_流行的婚礼歌曲被重新想象成数据即纸杯蛋糕
- 转载:汶川大地震中业余无线电应急通讯发挥作用
- android手机电视互动,手机APP控制电视 长虹智能机多屏互动体验(组图)
- CSK与KCF算法推导(二)
- ai 如何导出html格式,Adobe Illustrator导出SVG的设置方法
- 没人谈论的 3 种从 ChatGPT 赚钱的方法,我测试过的建立被动收入流的行之有效的方法
- 如何选择适合你的兴趣爱好(六十六),折纸
- 数学问题(四)——素数
- html5作品展示的动效,HTML5 动效的常见制作方法