Day03

# 集合框架

1.collection接口

父接口

Conllection collection = new ArrayList();

2.List接口

特点:有序,有下标,元素可以重复

Object get(int index):获取指定位置的元素

void add(int index,Object o):在index位置插入对象o

addAll(int index,Collection c):将一个集合中的元素添加到此index的位置

List subList(int fromIndex,int toIndex):返回fromIndex和toIndex之间的元素

3.ArraysList实现类

特点:有序,有下标,元素可以重复

底层结构:数组

4.Vector实现类

特点:有序,有下标,元素可以重复

底层结构:数组

速度较ArraysList慢,但线程安全

5.LinkedList实现类

特点:有序,元素可以重复

底层结构:双向链表

泛型结构

1.泛型类

2.泛型接口

3.泛型方法

例如 LinkedList<T> linkedList = new LinkedList<T>();

6.set接口

特点:无序,无下标,元素不可以重复

方法:全部继承Collection类的方法

底层结构:哈希表(数组+链表+红黑树)

7.HashSet实现类(重点)

特点:1.基于HashCode计算元素存放位置

2.当存入元素的哈希值相同时,会调用equals进行确认,如结果为true,则拒绝后者存入

由上特点可重写hashCode()和equals()方法

8.treeSet实现类

特点:有序,无下标,元素不可以重复

1.基于排列顺序实现元素不重复

2.实现了SortedSet接口,对集合元素自动排序

3.元素对象的类型必须实现Comparable接口(如何比较),指定排序规则

4.通过CompareTo方法确定是否为重复元素

综合

所有的集合的共性:add:添加

遍历{1.for加强 2.for遍历 3.iterator遍历}

remove:删除

contains:是否包含

indexof:获取下标

注意类型转换,向上转型和向下转型,intanceof();

# Map集合框架

 

Map接口

put():添加元素

remove():删除元素(删除key值)

遍历:1.使用KeySet();

for(String key:map.keySet()){
    System.out.println(key+"---"+map.get(key));
}

2.使用entrySet()方法

for(Map.Entry<String,String>entry : map.entrySet()){
    System.out.println(entry.getKey()+"---"+entry.getValue())
}

1.HashMap

线程不安全

2.TreeMap

自动排序类似上面

3.Collections工具类的使用

sort();排序

Collections.sort(list);//利用Collections的方法排序list集合

binarysearch():二分查找

copy();复制

shuffle();随机打乱

reverse():反转

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天道不可违

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值