一、列表循环
1.增强for循环写法:
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5);
for (Integer integer : list) {
System.out.print(integer+" ");
}
2.lambda表示写法:
list.forEach(x-> System.out.print(x+" "));
//如果只需要调用单个函数对列表元素进行处理,那么可以使用更加简洁的 方法引用 代替 Lambda 表达式:
list.forEach(System.out::print);
二、事件监听
1.匿名函数写法:
new JButton().addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// handle the events
}
});
2.lambda表达式写法:
// 这里主要体现为 比写匿名函数更简洁
new JButton().addActionListener(e -> {
// handle the events
});
三、代替 Runnable
1.通常写法:
new Runnable() {
@Override
public void run() {
System.out.println("hello world");
}
};
2.lambda表达式写法:
Runnable runnable = () -> System.out.println("hello world");
四、Map 映射
List<Integer> list1 = Arrays.asList(1, 2, 3, 4, 5);
List<Integer> collect = list1.stream().map(x -> x * 2).collect(Collectors.toList());
collect.forEach(System.out::println);
五、Reduce 聚合
1.增强for循环写法:
int result = 0;
for (Integer number : numbers) {
result+=number;
}
2.lambda表达式写法:
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
int sum = numbers.stream().reduce((x, y) -> x + y).get();