Java中常用集合操作
一、Map 名值对存储的。 常用派生类HashMap类
添加:
put(key,value)往集合里添加数据
删除:
clear()删除所有
remove(key)清除单个,根据k来找
获取:
size()获取元素的数量
get(key)根据key获取该数据
containsKey(key)根据key查找集合中有没有该内容,有返回true ,没有返回false
containsValue(value)根据value查找集合中有没有改内容,有返回true,没有返回false
public static void main(String[] args){
Map map = new HashMap();
map.put(1, "一");
map.put(2, "二");
map.put(3, "三");
map.put(4, "四"); map.remove(1); //根据key删除
System.out.println("有"+map.size()+"个元素");
System.out.println(map.get(4)); //根据key查找
System.out.println(map.containsKey(1));
System.out.println(map.containsValue("二"));
强类型集合
<>中加入类型,前后要对应
Map<Tkey,Tvalue> map = new HashMap<Tkey,Tvalue>();
二、List 用索引号存储的,派生类是ArrayList和LinkedList。
添加:
add (obj)
删除:
clear()删除所有
remove(int)根据索引号移除
remove(obj)根据内容移除
获取:
size()获取元素的数量
get(int)根据索引号获取指定元素
contains(obj)查找集合里有没有该数据源,有返回trus,没有返回false
遍历:
1.List可以直接for循环使用索引号遍历集合
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
2.还可以使用迭代器来遍历
迭代器(Iterator)
迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。
Java中的Iterator功能比较简单,并且只能单向移动:
(1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。注意:iterator()方法是java.lang.Iterable接口,被Collection继承。
(2) 使用next()获得序列中的下一个元素。
(3) 使用hasNext()检查序列中是否还有元素。
(4) 使用remove()将迭代器新返回的元素删除。
Iterator是Java迭代器最简单的实现,为List设计的ListIterator具有更多的功能,它可以从两个方向遍历List,也可以从List中插入和删除元素。
ArrayList <String> list=new ArrayList<>();
list.add("jackie"); //索引为0 //.add(e)添加元素
list.add("peter"); //索引为1
list.add("annie"); //索引为2
list.add("martin"); //索引为3
list.add("marry"); //索引为4 System.out.println("一共有"+list.size()+"个元素");//.size()查询一共有多少个元素
list.remove(3); //.remove(index) 根据索引号删除
list.remove("marry"); //.remove(Object o) 根据内容删除
System.out.println(list.contains("martin")); //.contains(obj)查询集合中是否有这个元素 System.out.println("索引号为2的是:"+list.get(2)); //.get(index)根据索引号查找
System.out.println("一共有"+list.size()+"个元素");
//用for循环遍历
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i)); //for循环使用索引号遍历list
}
//用迭代器遍历
Iterator it = list.iterator(); //造一个迭代器
while(it.hasNext()){ //.hasNext()检查序列中是否还有元素
object obj = it.next(); //.next()获得序列中的下一个元素
System.out.println(obj);
}
强类型集合
<>中加入类型,前后要对应
List<T> list = new ArrayList<T>();
Java中常用集合操作的更多相关文章
- java中的集合操作类(未完待续)
申明: 实习生的肤浅理解,如发现有错误之处.还望大牛们多多指点 废话 事实上我写java的后台操作,我每次都会遇到一条语句:List<XXXXX> list = new ArrayList ...
- java中常用Redis操作
stringRedisTemplate.opsForValue().set("test", "100",60*10,TimeUnit.SECONDS);//向 ...
- Java中常用的操作PDF的类库
iText iText是一个能够快速产生PDF文件的java类库.iText的java类对于那些要产生包含文本,表格,图形的只读文档是很有用的.它的类库尤其与java Servlet有很好的给合.使用 ...
- java中对集合操作的易错点01
今天用for循环遍历集合,对集合中满足条件的元素进行remove操作报错:ConcurrentModificationException 所以,在遍历集合进行增.删操作时,要使用迭代器的方式 publ ...
- JAVA中的集合容器操作类
目录 JAVA中的集合容器操作类 List集合 ArrayList的操作方法说明 LinkedList Stack Set Map Queue 总结 JAVA中的集合容器操作类 Java容器类库总共分 ...
- Java中的集合和常用类
Java中的常用类: ▪ Object类 ▪ Math类 ▪ String类和StringBuffer类(字符串) ▪ 8种基本类型所对应的包装类 ▪ java.util包中的类——Date类 Obj ...
- java中常用的工具类(二)
下面继续分享java中常用的一些工具类,希望给大家带来帮助! 1.FtpUtil Java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...
- Java中的集合概述
Java中的集合类有两个重要的分支,分别是接口Collection(包括List,Set等)和接口Map. 由于HashSet的内部实现原理使用了HashMap,所以我们先来了解Map集合类. 1.H ...
- Java中Set集合是如何实现添加元素保证不重复的?
Java中Set集合是如何实现添加元素保证不重复的? Set集合是一个无序的不可以重复的集合.今天来看一下为什么不可以重复. Set是一个接口,最常用的实现类就是HashSet,今天我们就拿HashS ...
随机推荐
- 前端网络、JavaScript优化以及开发小技巧
一.网络优化 YSlow有23条规则,中文可以参考这里.这几十条规则最主要是在做消除或减少不必要的网络延迟,将需要传输的数据压缩至最少. 1)合并压缩CSS.JavaScript.图片,静态资源CDN ...
- 谈一下关于CQRS架构如何实现高性能
CQRS架构简介 前不久,看到博客园一位园友写了一篇文章,其中的观点是,要想高性能,需要尽量:避开网络开销(IO),避开海量数据,避开资源争夺.对于这3点,我觉得很有道理.所以也想谈一下,CQRS架构 ...
- 菜鸟学Struts2——Struts工作原理
在完成Struts2的HelloWorld后,对Struts2的工作原理进行学习.Struts2框架可以按照模块来划分为Servlet Filters,Struts核心模块,拦截器和用户实现部分,其中 ...
- JavaScript的继承实现方式
1.使用call或apply方法,将父对象的构造函数绑定在子对象上 function A(){ this.name = 'json'; } function B(){ A.call(this); } ...
- javascript单元测试框架mochajs详解
关于单元测试的想法 对于一些比较重要的项目,每次更新代码之后总是要自己测好久,担心一旦上线出了问题影响的服务太多,此时就希望能有一个比较规范的测试流程.在github上看到牛逼的javascript开 ...
- python 入门笔记
1.pip包安装 pip install *** pip 中http和https代理设置(/etc/profile) 2.强制保存 :w !sudo tee % 3.cffi是python调用C的包 ...
- Asp.Net Core + Dapper + Repository 模式 + TDD 学习笔记
0x00 前言 之前一直使用的是 EF ,做了一个简单的小项目后发现 EF 的表现并不是很好,就比如联表查询,因为现在的 EF Core 也没有啥好用的分析工具,所以也不知道该怎么写 Linq 生成出 ...
- 云计算下PAAS的解析一
云计算下PAAS的解析一 PaaS是Platform-as-a-Service的缩写,意思是平台即服务. 把服务器平台作为一种服务提供的商业模式.通过网络进行程序提供的服务称之为SaaS( ...
- java常用的设计模式
设计模式:一个程序员对设计模式的理解:"不懂"为什么要把很简单的东西搞得那么复杂.后来随着软件开发经验的增加才开始明白我所看到的"复杂"恰恰就是设计模式的精髓所 ...
- windows10安装mysql5.7.17是这样安装的吗?
操作 全允许