本文共 1966 字,大约阅读时间需要 6 分钟。
Lambda????????????????????????????????Lambda??????????????
????
Lambda??????????(????) -> Lambda? ???->??lambda???? ???????
->?->?Lambda????
{}?????->???{}????????
Java8??????????????Runnable?Comparator?Function?BiFunction??????????Lambda?????? ????
Method Reference?????Lambda?????????????????????????Method Reference???????????????????????????????Lambda???????
??????
????::??? ???PrintStream ps = System.out; Consumer<String> con2 = ps::println; ?????
??::??? ???Comparator<Integer> com2 = Integer::compare; ?????
??::new ???Supplier<Employee> sup2 = Employee::new; ?????????
??????????????????????????????Method Reference????????
Method Reference??????????????Lambda????Stream API?Java8?????????????????????????????????
????
employees.stream() ? employees.parallelStream()? ????
Arrays.stream(int[] array)? ??Stream.of()
Stream.of(1,2,3,4)? ?????
Stream.iterate() ? Stream.generate()? ?????
filter(Predicate p)??????limit(n)????????skip(n)??????distinct()??????
map(Function f)??????flatMap(Function f)????????
sorted()??????sorted(Comparator c)???????????
allMatch(Predicate p)??????????anyMatch(Predicate p)????????????noneMatch(Predicate p)??????????findFirst()?????????findAny()????????????
reduce(T identity, BinaryOperator b)??????????????
collect(Collector c)????????????????Optional???????????????????????
Optional.of(T t)??????Optional???Optional.empty()?????Optional???Optional.ofNullable(T t)?????null?Optional???orElse(T t)???Optional??????????????get()???Optional???????????????OptionalemployeeOptional = Optional.ofNullable(boy);Employee employee = employeeOptional.orElse(new Employee("??"));
??Optional??????????????????????????
转载地址:http://ifoq.baihongyu.com/