I'm trying to generate Order instances using the Stream API. I have a factory function that creates the order, and a DoubleStream is used to initialize the amount of the order.
private DoubleStream doubleStream = new Random().doubles(50.0, 200.0);
private Order createOrder() {
return new Order(doubleStream.findFirst().getAsDouble());
}
@Test
public void test() {
Stream<Order> orderStream = Stream.generate(() -> {
return createOrder();
});
orderStream.limit(10).forEach(System.out::println);
If I initialize the Order instance using a literal (1.0), this works fine. When I use the doubleStream to create a random amount, the exception is thrown.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…