JAVA高阶笔记(一)--集合框架

255 阅读2分钟

JAVA高阶笔记(一)--集合框架

了解java的集合框架内容

collection             --接口

set         list           map   --接口

hashSet/TreeSet     Array/linkedList      hashMap  ---实现类

Collection 接口存储一组不唯一(可重复),无序的对象

List 接口存储一组不唯一(可重复),有序(插入顺序)的对象

Set 接口存储一组唯一(不可重复),无序的对象

Map接口存储一组键值对象,提供key到value的映射

1.List:可重复,有序

a.实现类ArrayList

​ ArrayList实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高

b.实现类LinkedList:

​ LinkedList采用链表存储方式。插入、删除元素时效率比较高

c.ArrayList使用方法:

add(Object o):将元素添加到集合尾部

add(int index,Object o):将元素添加到指定位置

size():获取集合的长度

contains(Object o):判定集合中是否存在该元素

remove(int index):移出指定角标的元素

remove(Oject o):移出指定元素  如果里面放入的元素类型是int类型,以角标为准备

get(int index):获取指定角标的元素

indexOf(Ojbect o):获取指定元素首次的角标

(***)角标从0开始,同数组一致

d.LinkedList使用方法:

ArrayList含有的常见方法该实现类基本含有,并还有新的内容

addFirst(Object o):添加元素到集合的开头

addLast(Ojbect o):添加元素到集合的尾部

getFirst():获取开头的元素

getLast():获取结尾的元素

removeFirst():删除集合开头的元素

removeLast():删除集合结尾的元素

2.Set:不可重复,无序

a.实现类HashSet:

​ 此类实现 Set 接口,由哈希表(实际上是一个 HashMap 实例)支持。它不保证 set 的迭代顺序;特别是它不保证该顺序恒久不变。此类允许使用 null 元素。

b.HashSet使用方法:

add():将元素添加到集合中,没有顺序

remove(Object o):将元素从集合中移除;

contains(Object o):判定集合中是否存在该元素

​ (***):Set因为是无序的,所以在需要循环遍历集合时无法使用基本的for--特殊for循环---foreach增强循环

for(类型 变量名 集合名){

	使用变量名等同于使用该类型的对象

}

3.Map:

a.存储键值对的集合;

b.实现类:HashMap:

​ 允许使用 null 值和 null 键

c.实现类:HashTable:

​ 任何非 null 对象都可以用作键或值,不允许null值;

d.HashMap使用方法:

put(key,value)---将键值对放入集合;

keySet()---获取所有健并放入集合---set集合;

values()---获取所有值并放入集合---collection集合;

get(key)---通过key获取对应的value;

isEmpty()---判定集合是否为空

remove(Object)---移除键值对关系

size()---获取键值对集合长度方法