Java8 lambda????10?????
???????????? ???????[ 2015/8/3 11:11:05 ] ???????????????
????Java 8 ????????????????????2014??3??18?????慰???????????Java????????????????????????械??????????????????????????lambda??????????????????????????????????Java 8???????????????????????械???????????????6?写????????????????????写?????????屑????????Lambda??????????????????????澹�?????煤????????写????????????????????????????????Java??????校????????????????????????????????????????????????????????械?????????????????????CPU?????????????????????Java 8??????????魏??????Java????????????????Java????????????????lambda?????????????????API???????????渭?Date???Time API???????????????????????????lambda??????????????????????????????lambda???????????????Java 8?????????????Java???????Java Collections framework??????????????API??lambda????????????斜??Lists????????Collections???????????????????????????????泄???Java 8??写????????????????些????????????????Java 8?????????????????????10??lambda????????梅???????些???????小????????????????????lambda??????
????Java 8 lambda???????
??????????Java 8???????????????????lambda????????API?????????????????????写???????????????????????????????????慰?????lambda????写??????Java??????????????????????械?????????????????Java??貌??????????????????????????些lambda????????API????????????????????????????Java???????械??????????????渭?????????????????????????????????Java 1.4??????????????校???????????????梅??????????????????????????????????????????畏??lambda???????????????????????????????????????????????????????????????????????????????????????Java 8 lambda??????????e????????????????
??????1????lambda???????Runnable
???????????Java 8????????????????lambda?????婊�???????????Runnable???????????????????????Java 8????runnable???????????4?写????????lambda??????????写????????????????????????????() -> {}????????????????????
????// Java 8????
????new Thread(new Runnable() {
????@Override
????public void run() {
????System.out.println("Before Java8?? too much code for too little to do");
????}
????}).start();
????//Java 8?????
????new Thread( () -> System.out.println("In Java8?? Lambda expression rocks !!") ).start();
?????????
????too much code?? for too little to do
????Lambda expression rocks !!
?????????????????????Java 8 lambda??????????????????lambda写?????鈥�???
????(params) -> expression
????(params) -> statement
????(params) -> { statements }
???????纾�??????????????????????????写??????????????????????????????????写??
????() -> System.out.println("Hello Lambda Expressions");
??????????????????????????????????写????????????
????(int even?? int odd) -> even + odd
????????????????????lambda??????????????????????些?????????????????????????小?????????????????校??????????a??b????x??y???even??odd??谩?
??????2?????Java 8 lambda???????????????
??????????霉?Swing API?????????????写??????????????????????姹�??????????????????????????????????????????lambda????写???????????????????????????
????// Java 8????
????JButton show = new JButton("Show");
????show.addActionListener(new ActionListener() {
????@Override
????public void actionPerformed(ActionEvent e) {
????System.out.println("Event handling without lambda expression is boring");
????}
????});
????// Java 8?????
????show.addActionListener((e) -> {
????System.out.println("Light?? Camera?? Action !! Lambda expressions Rocks");
????});
????Java?????????????????????????????? Collections.sort() ???? Comparator????Java 8?校??????????????lambda?????????a?????????????????????????貌??????????????????lambda??????? Runnable ?? ActionListener ??????械???路??????
??????3?????lambda???????斜???械???
????????????????Java????????????????????????????械??????????????????????????????绱�??????????????????斜??????Java????????????Java 8????????????????????????????????????胁??谢??????????????????泄??????????写?????????????????????????lambda??????????????????????????????????????????味??Java???????????????????????????????API?????????????胁??写??????????????????????????????lambda?????lambda??????????渭????斜???????????斜???????????? forEach() ??????????????????卸??????????lambda????????????小?
????// Java 8????
????List features = Arrays.asList("Lambdas"?? "Default Method"?? "Stream API"?? "Date and Time API");
????for (String feature : features) {
????System.out.println(feature);
????}
????// Java 8???
????List features = Arrays.asList("Lambdas"?? "Default Method"?? "Stream API"?? "Date and Time API");
????features.forEach(n -> System.out.println(n));
????// ???Java 8????????????????????????::?e????????????
????// ????????C++????????????????
????features.forEach(System.out::println);
?????????
????Lambdas
????Default Method
????Stream API
????Date and Time API
?????斜???????????????????????Java 8????梅????????method reference????????????C++??????e?????围????????????????Java 8????????????????谩?
??????

???路???
??????????????????
2023/3/23 14:23:39???写?貌??????????
2023/3/22 16:17:39????????????????????些??
2022/6/14 16:14:27??????????????????????????
2021/10/18 15:37:44???????????????
2021/9/17 15:19:29???路???????路
2021/9/14 15:42:25?????????????
2021/5/28 17:25:47??????APP??????????
2021/5/8 17:01:11