Java集合小结

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常用方法

在这里插入图片描述

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值