摘要: 突然间又来了一个新需求,比如,我想要所有人的名字,不要其他信息。 package com.qunar.hotel.java8; import com.google.common.collect.ImmutableList; import com.google.common.collect.Lists 阅读全文
posted @ 2018-07-28 20:02 刘皓lh 阅读(571) 评论(0) 推荐(0) 编辑
摘要: 我们经常操作List,例如现在有一个功能要求在所有人中筛选出年龄在20岁以上的人。 public class MyTest { private final List<Person> allPersonList; { Person p1 = new Person("风清扬", 42); Person 阅读全文
posted @ 2018-07-28 20:00 刘皓lh 阅读(1308) 评论(3) 推荐(0) 编辑
摘要: java8之前,已经有一些函数式接口了,比如comparator,Thread,Runable,看到这里,可能已经忘了什么是函数式接口了。 函数式接口:只有一个抽象方法的接口叫做函数式接口。 函数式接口的存在使得lambda表达式,方法引用,只有一个方法,编译器非常方便对类型做判断,既然函数式接口这 阅读全文
posted @ 2018-07-28 20:00 刘皓lh 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 首先定义一个接口 public interface Calculation<T> { public T colculate(T t1, T t2); } public interface Calculation<T> { public T colculate(T t1, T t2); } publi 阅读全文
posted @ 2018-07-28 19:59 刘皓lh 阅读(248) 评论(0) 推荐(0) 编辑
摘要: java8之前,java只允许传基础数值或者对象的引用,而现在java允许传代码了。 接下来还是以Comparator来举例。 //匿名内部类 @Test public void java8Test() { Person p1 = new Person(22); Person p2 = new Pe 阅读全文
posted @ 2018-07-28 19:58 刘皓lh 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 很多博客都拿Comparator,我也贴一下吧。 java8以前的匿名内部类用来排序。 显而易见,java8只用了一行代码实现排序,我这里并没有用传统博客里写的类似(o1,o2)->o1-o2这种代码,因为我认为目前我写的这个版本是能非常直观的看出差异的。 代码读起来的感觉就像是,对List排序,通 阅读全文
posted @ 2018-07-28 19:57 刘皓lh 阅读(270) 评论(0) 推荐(0) 编辑