Java加强-day02
一、Map集合(键值对形式,双列集合)
1.Set集合的底层都是调用的Map集合来实现的,只是不要Map集合中键值对的值。
2.Map集合的遍历方式
1)把键值存储到Set集合中,键找值API进行遍历
2)用增强for循环遍历(for(对象类型 变量 :集合)),由于对象类型无法确定所以用Entry类型包装Map集合键值对进行遍历
3)用Lambda的forEach遍历(底层也是用Entry对象)
3.Map集合实现类
1)HashMap:无序,不重复(对于键而言,值可以重复),无索引
2)LinkedHashMap:基于双链表有序(依据加入顺序),不重复,无索引
3)TreeMap:排序(自定义),不重复,无索引
二、Stream流,用作操作集合和数组的数据
1.三个步骤:获取流、调用流方法处理数据、终结流获取结果
2.获取流
1)获取集合Stream流list.stream();Map集合可以分开获取键流(map.keySet)和值流和Entry包装的键值流
2)获取数组的Stream流:Array.stream(names)和stream.of(names)
3.流的中间方法:对流上的数据进行处理返回流,支持链式编程
4.流的终结方法:调用完成后不返回流了,终结后流不能使用了
5.流的收集:
1)收集到List或Set集合中使用Collectiions.toList()方法
2)收集到数组中s.toArray
3)收集到Map集合,分开收集键和值
3)注意流只能收集一次
三、可变参数
1)一种特殊的形参,可以不传数据给它,也可以传一个或多个,也可以传一个数组给它。比较灵活
2)可变参数在形参列表中只能有一个,且只能放在形参列表的最后面(不然容易出现歧义)

浙公网安备 33010602011771号