为什么我们需要Java8中的消费者和供应商函数



我试着在新的java.util.function ConsumerSupplierFunction上阅读。

我不明白我们为什么需要他们,问题出在哪里,他们解决了什么?

你能给我一个没有API和新的API使用的例子吗?解决了什么问题?

也许您认为它们必须比实际情况更复杂。

它们被设计成超级简单的代码片段,它们本身并没有太多作用,但作为代码片段,你可以将其传递给可以使用这些代码片段的库。

此示例使用供应商和消费者打印100个UUID

Stream.generate(UUID::random) // <<< Supplier<UUID>
      .limit(100)
      .forEach(System.out::println); // <<< Consumer<UUID>

一个较长的例子是

Supplier<UUID> uuidSupplier = UUID::random;
Consumer<UUID> uuidConsumer = System.out::println;
Stream.generate(uuidSupplier)
      .limit(100)
      .forEach(uuidConsumer);

最新更新