Java8-Lambda-No.03
来源:互联网 发布:呼死你软件淘宝有卖吗 编辑:程序博客网 时间:2024/06/15 14:53
import java.util.Comparator;import java.util.Objects;import java.util.UUID;import java.util.concurrent.Callable;import java.util.function.Consumer;import java.util.function.Function;import java.util.function.Predicate;import java.util.function.Supplier;public class Lambda3 { @FunctionalInterface interface Fun { void foo(); } public static void main(String[] args) throws Exception { // Predicates Predicate<String> predicate = (s) -> s.length() > 0; predicate.test("foo"); // true predicate.negate().test("foo"); // false Predicate<Boolean> nonNull = Objects::nonNull; Predicate<Boolean> isNull = Objects::isNull; Predicate<String> isEmpty = String::isEmpty; Predicate<String> isNotEmpty = isEmpty.negate(); // Functions Function<String, Integer> toInteger = Integer::valueOf; Function<String, String> backToString = toInteger.andThen(String::valueOf); backToString.apply("123"); // "123" // Suppliers Supplier<Person> personSupplier = Person::new; personSupplier.get(); // new Person // Consumers Consumer<Person> greeter = (p) -> System.out.println("Hello, " + p.firstName); greeter.accept(new Person("Luke", "Skywalker")); // Comparators Comparator<Person> comparator = (p1, p2) -> p1.firstName.compareTo(p2.firstName); Person p1 = new Person("John", "Doe"); Person p2 = new Person("Alice", "Wonderland"); comparator.compare(p1, p2); // > 0 comparator.reversed().compare(p1, p2); // < 0 // Runnables Runnable runnable = () -> System.out.println(UUID.randomUUID()); runnable.run(); // Callables Callable<UUID> callable = UUID::randomUUID; callable.call(); }}
阅读全文
1 0
- Java8-Lambda-No.03
- Java8-Lambda-No.01
- Java8-Lambda-No.02
- Java8-Lambda-No.04
- Java8-Lambda-No.05
- Java8-Stream-No.03
- Java8-Lock-No.03
- Java8-Executors-No.03
- java8 Lambda
- Java8 Lambda
- Java8 Lambda
- java8 lambda
- java8-lambda
- java8-lambda
- java8 Lambda
- 【lambda】java8 lambda
- Java8 Lambda表达式教程
- Java8 Lambda表达式教程
- 标签直接弹出网址
- jvm-类加载
- 代码整洁之道(二)
- Java8-Lambda-No.02
- go
- Java8-Lambda-No.03
- Dubbo学习总结(3)——Dubbo-Admin管理平台和Zookeeper注册中心的搭建
- Java8-Lambda-No.04
- AJAX请求 $.ajaxSetup方法的使用
- 性能优化--找到SQL SERVER中的书签查找
- 高精度
- 写测试
- 浅谈CNN与RNN
- C++中 const int* ,int * cnost,以及指针 (pointer) 的理解