集合

集合

存放不定数量的不定类型的内容可变的容器,且可以根据需要自由提取元素

集合与数组的区别

  • 长度:集合可变,数组固定
  • 内容类型:集合只能为引用类型,数组都可以
  • 元素内容:数组只能存同种类型,而集合都可以

集合操作

创建、添加元素、删除元素、修改元素、查看元素、数量统计、排序

四个常用集合
  1. ArrayList

[ArrayList:]线程不安全
[Vector:]线程安全
Array:它是数组,申明数组的时候就要初始化并确定长度,长度不可变,而且它
只能存储同一类型的数据,比如申明为String类型的数组,那么它只能存储S听类型数据
ArrayList:它是一个集合,需要先申明,然后再添加数据,长度是根据内容的多少而改变的,
ArrayList可以存放不同类型的数据,在存储基本类型数据的时候要使用基本数据类型的包装类

2.LinkedList

[LinkedList:]线程不安全
LinkedBlockingDeque:双向队列:线程安全
LinkedBlockingQueue:单向队列:线程安全
[Set:]唯一,无序
HashSet
TreeSet

3.HashMap

[HashMap]线程不安全
Hashtable线程安全:单锁
[ConcurrentHashMap]线程安全:分段锁
解决过度集中
扩展因子: >=0.75=>arr.length*2:再哈希

4.TreeMap

集合内的数据结构
Array:数组
	优势:遍历  劣势:查找,插入,删除,
Linked:链表
优势:插入,删除 劣势:遍历,查找
Hash:哈希表(散列表)
优势:
jdk<=7 数组+链表
jdk=8 数组+链表+红黑树
		null(==0)>元素(==1)>链表(>=2>红黑树(>=8)
		红黑树>链表(<=6)>元素(==1)>null(==0)
Tree:红黑平衡二叉树
	优势:查找 劣势:遍历,插入,删除 
List集合的标准行为
int size();
boolean isEmpty();
int indexOf(T t);
int lastIndexOf(T t);
boolean add(T t);
boolean add(int index,T t);
boolean add(T[] ts);
boolean add(int index,T[] ts);
boolean remove (T t);
T remove (int index);
boolean remove(T[] ts);
void retain (T[] ts);
boolean set(int index,T t);
T get(int index);
boolean contains(T t);
boolean contains(T[] ts);
Iterator<T> iterator();
Map的基本操作
	Map<K,V> map=new HashMap(int initCapacity);
	int size =map.size();
	boolean empty=map.isEmpty();
	
	boolean has=map.containsKey(K key);
	boolean has=map.containsValue(V value);
	V value=map.get(K key);
	V value=map.put(K key,V value);
	//for(K k:keys){...}
	//keys.forEach(e->{});
	//Iterator<K> it=keys.iterator();while(it.hasNext()){k key=it.next();...}
	Set<> keys=next.keySet();
	Collection<V> value=next.value();
	Set<Map.Entry<String,Count>> entries=next.entrySet();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值