https://www.cnblogs.com/franson-2016/p/5593080.html

Predicate 
predicate接收一个变量,并返回一个boolean值,predicate接口是一个简单的比进行较运算操作的接口,但一般不使用。例如:

Predicate<String> p = (str) -> str.equls("321aiyi.com");
sysout(p.test("321aiyi.com")); //true
sysout(p.test("321aiyi.com").negate()) //false

Function 
这个接口其实就是一个单纯的最简单的实现了@FunctionalInterface的接口类,一般对一个方法进行引用时,可以直接使用该接口。

Function<String, Integer> fun = String::valueOf;
String str = fun.apply(1);

Supplier 
这个就更简单了,他就相当于类的Factory,用它获取任意一个带有空参构造的类。

Supplier<StringBuffer> s = StringBuffer::new;
StringBuffer sb = s.get();

Consumer 
给定一个参数,并对其进行操作

Consumer<String> c = (str) -> System.out.pringln(str + "~~~");
c.accept("woca"); //"woca~~~"

另外,还有好多之前的接口也做了对lambda的支持,比如之前所说的Comparator接口等等,这里就不一一诉说了,喜欢钻研的朋友们可以拔源码或者阅读相关文档慢慢看。

最新文章

  1. 如何用PowerShell列出你机器上的.NET Framework的版本号和SP服务补丁
  2. CSS布局(下)
  3. Ue4 Shader博客
  4. jsnop
  5. 【hibernate】&lt;第一节&gt;hibernate简单入门
  6. 【C#学习笔记】类构造函数使用
  7. mysql违背了唯一约束
  8. delphi 立即显示提示
  9. android访问asset目录下的资源
  10. SAR ADC简介
  11. WinForm笔记一:文本框只允许输入数字
  12. ContextMenu控件引用以及不用v4包的方法
  13. 如何用vue-cli初始化一个vue项目
  14. MySQL实战45讲学习笔记:事务隔离级别(第三讲)
  15. 用python计算圆周率PI
  16. line-height 设置为 1
  17. Web API 方法的返回类型、格式器、过滤器
  18. 随机重拍与抽样(random_shuffle,random_sample,random_sample_n)
  19. springboot-28-security(一)用户角色控制
  20. 在学习使用webpack中遇到的错误

热门文章

  1. PRML5-神经网络(1)
  2. day36
  3. stm32中assert_param的用法说明
  4. 搭建HBase的本地模式、伪分布式、全分布式和HA模式
  5. Maven的继承与聚合——多模块开发
  6. 笔记:UITextView内容垂直居中方法
  7. Exp3
  8. python 相对路径导入 与 绝对路径导入
  9. PowerBI开发 第十三篇:增量刷新
  10. 微服务监控zipkin、skywalking以及日志ELK监控系列