码迷,mamicode.com
首页 > 其他好文 > 详细

lamda和匿名内部类

时间:2019-09-29 23:55:11      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:而且   lamda   out   int   cti   str   新特性   amd   有一个   

匿名内部类

匿名内部类在日常编程中还是经常会使用的。比如

ArrayList<String> list=new ArrayList<>();
list.add(new String("Hello World!"));

lamda 是java 8的新特性。配合java8的stream流处理,特别的方便

//list.foreach
ArrayList<String> list=new ArrayList<>();
list.add("Hello");
list.add("World");
list.foreach(o->{
    System.out.println(o);
});
//stream
list.stream().foreach(o->{
    System.out.println(o);
});

java里还有一个函数接口,在编写中也会用lamda去表示,这样简单一点

  • Function
  • Consumer
  • Predicate
  • Supplier
    这几个常用的函数接口在stream流中有大量的使用,还是非常实用的。

个人感觉

我感觉lamda约等于匿名内部类。区别就在于。
匿名内部类是类,所有有类的特点,比如就私有属性,可以重写方法什么的。
lamda是接口,所以必须继承重写,而且没有私有变量等,final 还是可以有的,lamda要求的函数接口 只能有一个方法,如果有多个,其它的必须为default

lamda和匿名内部类

标签:而且   lamda   out   int   cti   str   新特性   amd   有一个   

原文地址:https://www.cnblogs.com/duangL/p/11610444.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!