听说你还在用keySet()
、entrySet()
遍历map
?老铁快提提速吧,试试java8
的新特性Lambda
表达式。
1、什么是Lambda 表达式
Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性。
Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。
使用 Lambda 表达式可以使代码变的更加简洁紧凑。
2、基本语法
(parameters) -> expression
或
(parameters) ->{ statements; }
3、Lambda 表达式遍历集合
3.1、List集合
//1、创建List集合并添加元素
List<String> list = new ArrayList<>();
list.add("柠檬班");
list.add("ningmengban");
list.add("lemon");
//2、通常的遍历方式
for (String s : list) {
System.out.println(s);
}
//3、Lambda 表达式
list.forEach(x->{
System.out.println(x);
});
//4、更炫酷的的方式:方法引用
list.forEach(System.out::println);
3.2、Set集合
//1、创建Set集合并添加元素
Set<String> set = new HashSet<>();
set.add("java8");
set.add("java9");
set.add("java10");
//2、通常的遍历方式
for (String s : set) {
System.out.println(s);
}
//3、Lambda 表达式
set.forEach(x->{
System.out.println(x);
});
//4、更炫酷的的方式:方法引用
set.forEach(System.out::println);
3.3、Map集合
//1、创建Map集合并添加元素
Map<String,Integer> map = new HashMap<>();
map.put("java", 10);
map.put("php", 20);
map.put("python", 30);
map.put("C#", 40);
map.put("C", 50);
map.put("C++", 60);
//2、遍历方式1
Set<String> keySet = map.keySet();
for (String key : keySet) {
System.out.println(key + ":" + map.get(key));
}
//3、遍历方式2
keySet.forEach(key -> System.out.println(key + ":" + map.get(key)));
//4、遍历方式3
Set<Map.Entry<String, Integer>> entries = map.entrySet();
for (Map.Entry<String, Integer> entry : entries) {
System.out.println(entry.getKey() + ":" + entry.getValue());
}
//5、遍历方式4
entries.forEach(entry -> System.out.println(entry.getKey() + ":" + entry.getValue()));
//6、遍历方式5
map.forEach((key,value)-> System.out.println(key+":"+value));
欢迎来到testingpai.com!
注册 关于