学新东西最快的方式就是例子,关于lambda表达式的几个简单例子,记录一下。
//旧方法
new Thread(new Runnable() {
@Override
public void run() {
System.out.println("Hello from thread");
}
}).start();
//新方法:
new Thread(
() -> System.out.println("Hello from thread")
).start();
//旧方法:
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("The button was clicked using old fashion code!");
}
});
//新方法:
button.addActionListener( (e) -> {
System.out.println("The button was clicked. From Lambda expressions !");
});
//Old way:
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7);
for(Integer n: list) {
System.out.println(n);
}
//New way:
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7);
list.forEach(n -> System.out.println(n));
//也可以用 :: 方法引用
list.forEach(System.out::println);