Java集合小结

2023-12-21 03:09:56

1 单列集合 Collection

每个元素只有一个值

1.1 List

ArrayListLinkedList
元素特点有序、可重复、有索引有序、可重复、有索引
底层实现数组双链表
使用策略在意元素添加顺序,元素重复,频繁根据索引查询在意顺序,元素重复,增删首尾数据较多

1.2 Set

HashSetLinkedHashSetTreeSet
元素特点无序不重复、无索引有序、不重复、无索引升序、不重复、无索引
底层实现哈希表哈希表 + 双链表红黑树
使用策略不在意元素添加顺序,无重复元素,增删改查快在意添加顺序, …需要对元素排序,…

1.3 Collection遍历方式

Collection<String> c = new ArrayList<>();

//方式一,迭代器(只能遍历集合,不能遍历数组)
Iterator<String> it = c.iterator();
while(it.hasNext()){
	String s = it.next();
}
//方式二,增强for循环(数组也能用)
String[] names={"奥特曼""小怪兽"};
for (String name : names) {
	System.out.println(name);
}
//方式三,forEach方法,可结合lambda表达式简化
c.forEach(new Consumer<String>() {
	@Override
	public void accept(String s) {
		System.out.println(s);
	}
);
//简化:
c.forEach((String s) -> {
	System.out.println(s);
});
//再次简化
c.forEach(s ->{
	System.out.println(s);
});
//再再次简化
c.forEach(s -> System.out.println(s));
//再再再次简化
c.forEach(System.out::println);

1.4 Collection常用方法

在这里插入图片描述

2 双列集合 Map

键值对集合
.

特点由 决定, 只是附属品,没有要求
.
底层实现和Set一样,Set就是在调用Map,只不过只要键数据而已
.

需要存储一一对应的数据时,就可以考虑使用Map集合来做

2.1 三种常见的map遍历方式

//方式一,键找值:
map.keySet()获取全部键,然后遍历获取对应值map.get(key)

//方式二,键值对:
Set<Map.Entry<K, V>> entries = map.entrySet() 获取所有“键值对”实体,
然后使用增强for循环通过 entry.getKey().getValue() 进行遍历

//方式三lambda:BiConsumer
map.forEach(new BiConsumer<String, Double>() {
	@Override
	public void accept(String k, Double v) {
		System.out.println(k,V);
	}
);
//简写
map.forEach( (k,v) ->System.out.println(k+"--->"+v) );

2.2 map常用方法

在这里插入图片描述

文章来源:https://blog.csdn.net/weixin_45606831/article/details/135117052
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。