lambda
william_919
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
一、lamda前言:JDK8新特性(接口的静态方法和默认方法)
接口的静态方法和默认方法 在jdk8之前,interface之中可以定义变量和方法,变量必须是public、static、final的,方法必须是public、abstract的。由于这些修饰符都是默认的,所以在JDK8之前,下面的写法都是等价的。 public interface JDK8BeforeInterface { public static final int field1 =...原创 2019-03-26 09:30:47 · 295 阅读 · 0 评论 -
二、lambda之函数式接口@FunctionalInterface的使用说明
函数式接口@FunctionalInterface的使用说明 我们常用的一些接口Callable、Runnable、Comparator等在JDK8中都添加了@FunctionalInterface注解。 通过JDK8源码javadoc,可以知道这个注解有以下特点: 该注解只能标记在"有且仅有一个抽象方法"的接口上。 JDK8接口中的静态方法和默认方法,都不算是抽象方法。 接口默认继承jav...原创 2019-03-26 09:40:14 · 943 阅读 · 0 评论 -
三、lambda入门
三、lambda入门 之前的文章@FunctionalInterface的使用说明已经介绍了函数式接口,现在我们来了解下JDK8大名鼎鼎的lambda。 Runnable traditionalRunnable = new Runnable() { @Override public void run() { System.out.println("traditionalRunnable")...原创 2019-03-26 09:50:49 · 291 阅读 · 0 评论 -
四、lambda之Method References实现方法复用
四、Method References实现方法复用 之前的文章已经介绍了函数式接口与lambda表达式,这篇文章主要学习下方法引用。使用方法引用,可以减少lambda表达式的书写,在Stream API中很常用。 一段代码对比下lambda与静态方法引用: List<Integer> ids = Arrays.asList(1, 2, 5, 4, 3); // 使用lambda表达式 ...原创 2019-03-26 10:16:16 · 711 阅读 · 0 评论 -
五、使用stream、Comparator和Method Reference实现集合的优雅排序
五、实现集合的优雅排序 大家对java接口Comparator和Comparable都不陌生,JDK8里面Comparable还和以前一样,没有什么改动;但是Comparator在之前基础上增加了很多static和default方法。本文主要结合JDK的stream编程,学习下Comparator。 可以使用Stream.sort对集合进行排序,sort有2个重载方法,区别如下。 // Stud...原创 2019-03-26 15:29:02 · 1741 阅读 · 0 评论 -
六、lambda之Stream流式编程
一、 什么是 Stream Stream 中文称为 “流”,通过将集合转换为这么一种叫做 “流” 的元素序列,通过声明性方式,能够对集合中的每个元素进行一系列并行或串行的流水线操作。 换句话说,你只需要告诉流你的要求,流便会在背后自行根据要求对元素进行处理,而你只需要 “坐享其成”。 二、流操作 整个流操作就是一条流水线,将元素放在流水线上一个个地进行处理。 其中数据源便是原始集合,然后将如 L...原创 2019-03-26 16:52:22 · 15013 阅读 · 6 评论
分享