java中的集合框架

java中的集合框架

一、java集合的接口

1、List接口的实现类

1、ArrayList
1、特点

​ 是一组有序、可以重复的集合

2、语法

​ ArrayList 对象名 = new ArrayList();

​ 或:List 对象名 = new ArrayList();

3、存储方式

​ 在堆里面开辟了一个连续的空间

4、常用的方法

​ 添加数据:add()

​ 取数据:get()

​ 得到长度:size()

​ 删除值:remove()

5、下标

​ 从0开始,到长度减1结束

6、遍历的方式
for(int i = 0;i<list.size;i++){    //for循环遍历
	System.out.println(list.get());
}
for(数据类型 变量名 :对象名){		//foreach循环遍历
    System.out.println(变量名);
}
Iterator<数据类型> it = list.iterator();	//Iterator
while(it.hasNext()){
    System.out.println(it.next());
}

2、LinkedList
1、特点

​ 1、采用链式存储的规则

​ 2、适用于集合频繁修改

2、常用方法

​ 清空:clear()

​ 获得第一个值:getFirst()

​ 添加数据:add()

​ 添加到最后一个:addLast()

​ 添加第一个:addFirst()

​ 获得长度:size()

3、语法

​ LinkedList 对象名 = new LinkedList()

4、遍历的方式
for(int i = 0;i<linkedlist.size;i++){    //for循环遍历
	System.out.println(list.get());
}
for(数据类型 变量名 :对象名){		//foreach循环遍历
    System.out.println(变量名);
}
Iterator<数据类型> it = linkedlist.iterator();	//Iterator
while(it.hasNext()){
    System.out.println(it.next());
}
3、Vector
1、和ArrayList的区别

​ ArrayList线程是不安全的,Vector线程比较安全。

2、Set接口的实现类

1、HashSet
1、特点

​ 不能用下标取值,因为set接口是存储一组无序、且不重复的数据

2、遍历方式
for(数据类型 变量名 :对象名){     //foreach循环遍历    
    System.out.println(变量名);
}
Iterator<数据类型> it = set.iterator();  //Iterator遍历
while(it.hasNext()){   
    System.out.println(it.next());
}
2、TreeSet
1、特点

​ 以树状方式存储,还实现了接口的排序

2、遍历方式
for(数据类型 变量名 :对象名){     //foreach循环遍历    
    System.out.println(变量名);
}
Iterator<数据类型> it = treeSet.iterator();  //Iterator遍历
while(it.hasNext()){   
    System.out.println(it.next());
}
3、set接口的特点

​ 可以用来给集合去重,也可以用来排序。

3、Map接口

1、存储方式

​ Key,Value的方式

2、HashMap
1、特点

​ 1、线程不安全,速度快

​ 2、key和value可以是null

​ 3、key可以重复

2、常用的方法

​ put():添加数据

​ get():根据键获取相关的值

​ remove():删除值

​ size():集合的长度

​ keySet():获得键的集合

​ values():获得值的集合

​ containsKey():判断键对应的值是否存在

​ isEmpty():判断是否为空

​ clear():清空集合

3、HashTable
1、特点

​ 1、Key和Value不能null,可以有重复key

​ 2、线程比较安全

2、遍历
for(数据类型 变量名 :对象名){     //foreach循环遍历    
    System.out.println(变量名);	//遍历所有的key
}
Iterator<数据类型> it = hashTable.iterator();  //Iterator遍历
while(it.hasNext()){   
    System.out.println(it.next());
}
4、ConcurrentMap
1、特点

​ 比HashMap更优,针对线程安全部分代码做了优化

5、TreeMap
1、特点

​ 1、会对key进行排序

​ 2、key不能为null

2、存储方式

​ 以树状形状结构存储

3、遍历
for(数据类型 变量名 :对象名){     //foreach循环遍历    
    System.out.println(变量名);	//遍历所有的key
}
Iterator<数据类型> it = treepMap.iterator();  //Iterator遍历
while(it.hasNext()){   
    System.out.println(it.next());
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值