Java集合类汇总

一、集合与数组

数组(储存多个相同类型数据的集合)

集合(只能存储对象)

二、集合框图

Collection接口是最基本的集合类接口,其继承和产生了两个接口List和Set。

Map是一个映射接口,用于存储一组键值对象,Map不能包含重复的key,但是可以包含相同的value

Interator是一个用于遍历集合的接口,通常包含有以下三个方法:

1.hasNext():是否有下一个元素。

2.next():返回迭代的下一个元素。

3.remove():从迭代器指向的 collection 中移除迭代器返回的最后一个元素(可选操作)。

三、主要接口和类的介绍

1.List(有序、可重复)

List中存放的对象是有序且可以重复,集合中的每一个元素都有它的索引,查询速度快,增删数据时比较慢。List的实现类有LinkedList, ArrayList, Vector, Stack。

2.Set(无序,不可重复)

Set中存放的对象是无序且不可以重复,Set的实现类有AbstractSet,HastSet,TreeSet。

3.Map(键值对)

Map集合中存储的是键值对,对map集合遍历时先得到键的set集合,对set集合进行遍历,得到相应的值。

四、遍历

1.Interator:迭代输出。

2.foreach(元素变量 x:遍历对象 Obj):for加强循环。

3.for:循环输出。

五、List接口

1ArrayList和LinkList

ArrayList是一个动态数组,LinkList是一个双向链表,ArrayList适用于对对象的查询操作,LinkList适用于对对象的增删操作。ArrayList、LlinkList是非同步的。

Vector于ArrayList的用法相似,是同步的,所以Vector是线程安全的。

2.Map接口

HashMap是最常用的Map,它根据键的HashCode值存储数据,遍历时,取得数据的顺序是完全随机的。

六、List的遍历

List <String>list =new ArrayList <String>();
list.add("Hello");
list.add("World");
//foreach取值
for(String str:list){
System.out.println(str);
//把链表变为数据相关的内容进行遍历
String[] strArray=new String[list.size()];
list.toArray(strArray);
for(int i=0;i<=strArray.length-1;i++){
System.out.println(strArray[i]);
//使用迭代器进行遍历
Iterator <String> ite=list.iterator();
while(ite.hasNext()){
System.out.println(ite.next());

七、Map的遍历

第一种:keySet();

Map map = new HashMap();
map.put("1","Hello");
map.put("2","World");
Iterator it = map.keySet().iterator();
while(it.hasNext()){
Object key = it.next();
System.out.println(map.get(key));

第二种:entrySet()
Map map = new HashMap();
map.put("1","Hello");
map.put("2","World");
Iterator it = map.entrySet().iterator();
while(it.hasNext()){
Entry e =(Entry) it.next();
System.out.println("键"+e.getKey () + "的值为" + e.getValue());

(

Map <String,String>map = new HashMap<String,String>();
map.put("1","Hello");
map.put("2","World");

Iterator <Map.Entry<String,String>it = map.entrySet().iterator();

while(it.hasNext()){
Map.Entry<String,String> =it.next();
System.out.println("键"+e.getKey () + "的值为" + e.getValue());

)

转载于:https://www.cnblogs.com/ming-long/p/9204783.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值