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 ...
随机推荐
- [高并发]Java高并发编程系列开山篇--线程实现
Java是最早开始有并发的语言之一,再过去传统多任务的模式下,人们发现很难解决一些更为复杂的问题,这个时候我们就有了并发. 引用 多线程比多任务更加有挑战.多线程是在同一个程序内部并行执行,因此会对相 ...
- 【大型网站技术实践】初级篇:借助Nginx搭建反向代理服务器
一.反向代理:Web服务器的“经纪人” 1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从 ...
- Asp.net MVC 传递数据 从前台到后台,包括单个对象,多个对象,集合
今天为大家分享下 Asp.net MVC 将数据从前台传递到后台的几种方式. 环境:VS2013,MVC5.0框架 1.基本数据类型 我们常见有传递 int, string, bool, double ...
- 如何进行python性能分析?
在分析python代码性能瓶颈,但又不想修改源代码的时候,ipython shell以及第三方库提供了很多扩展工具,可以不用在代码里面加上统计性能的装饰器,也能很方便直观的分析代码性能.下面以我自己实 ...
- MVC Core 网站开发(Ninesky) 1、创建项目
又要开一个新项目了!说来惭愧,以前的东西每次都没写完,不是不想写完,主要是我每次看到新技术出来我都想尝试一下,看到.Net Core 手又痒了,开始学MVC Core. MVC Core最吸引我的有三 ...
- NET Core-学习笔记(四)
经过前面分享的三篇netcore心得再加上本篇分享的知识,netcore大部分常用知识应该差不多了,接下来将不会按照章节整合一起分享,因为涉及到的东西整合到一起篇幅太大了,所以后面分享将会按照某一个知 ...
- 学习笔记之MVC级联及Ajax操作
由于刚转型到MVC,MVC的架构模式很多不是很清楚,比如今天就想做个级联的操作,因为之前的ASP.NET的方式是通过:控件-->添加事件-->后台编写级联事件进行触发,但是这个MVC就不同 ...
- PHP-----文件系统的交互
本文讲解php中于文件交互中所使用的函数 代码示例 <html> <head> <title> File Detail </title> </he ...
- 由js apply与call方法想到的js数据类型(原始类型和引用类型)
原文地址:由js apply与call方法想到的js数据类型(原始类型和引用类型) js的call方法与apply方法的区别在于第二个参数的不同,他们都有2个参数,第一个为对象(即需要用对象a继承b, ...
- 多线程同步工具——Lock
本文原创,转载请注明出处. 参考文章: <"JUC锁"03之 公平锁(一)> <"JUC锁"03之 公平锁(二)> 锁分独占锁与共享锁, ...