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 ...
随机推荐
- KV存储系统
现在的KV存储系统都是分布式的,首先介绍Zookeeper——针对大型分布式系统的高可靠的协调系统. 开发分布式系统是件很困难的事情,其中的困难主要体现在分布式系统的“部分失败”.“部分失败”是指信息 ...
- Angular企业级开发(2)-搭建Angular开发环境
1.集成开发环境 个人或团队开发AngularJS项目时,有很多JavaScript编辑器可以选择.使用优秀的集成开发环境(Integrated Development Environment)能节省 ...
- spring源码分析之freemarker整合
FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页.电子邮件.配置文件.源代码等)的通用工具. 它不是面向最终用户的,而是一个Java类库,是一款程 ...
- HIVE教程
完整PDF下载:<HIVE简明教程> 前言 Hive是对于数据仓库进行管理和分析的工具.但是不要被“数据仓库”这个词所吓倒,数据仓库是很复杂的东西,但是如果你会SQL,就会发现Hive是那 ...
- ,net core mvc 文件上传
工作用到文件上传的功能,在这个分享下 ~~ Controller: public class PictureController : Controller { private IHostingEnvi ...
- springMVC初始化绑定器
单日期 在处理器类中配置绑定方法 使用@InitBinder注解 在这里首先注册一个用户编辑器 参数一为目标类型 propertyEditor为属性编辑器,此处我们选用 CustomDateEd ...
- 如何使用RobotFramework编写好的测试用例
如何使用Robot Framework编写优秀的测试用例 概述 命名 测试套件命名 测试用例命名 关键字命名 setup和teardown的命名 文档 测试套件文档 测试用例文档 用户关键字文档 测试 ...
- .NET 环境中使用RabbitMQ
在企业应用系统领域,会面对不同系统之间的通信.集成与整合,尤其当面临异构系统时,这种分布式的调用与通信变得越发重要.其次,系统中一般会有很多对实时性要求不高的但是执行起来比较较耗时的地方,比如发送短信 ...
- ABP源码分析四十一:ZERO的Audit,Setting,Background Job
AuditLog: 继承自Entity<long>的实体类.封装AuditLog的信息. AuditingStore: 实现了IAuditingStore接口,实现了将AuditLog的信 ...
- node.js里npm install --save 与 npm install --save-dev 的区别
在package.json可以看到一个放在package.json 的dependencies , 一个放在devDependencies里面. 目前找到的一些解答:真正跑在用户浏览器中的代码,比如j ...