¿Es posible emitir una transmisión en Java 8? Digamos que tengo una lista de objetos, puedo hacer algo como esto para filtrar todos los objetos adicionales:
Stream.of(objects).filter(c -> c instanceof Client)
Sin embargo, después de esto, si quiero hacer algo con los clientes, necesitaré lanzar cada uno de ellos:
Stream.of(objects).filter(c -> c instanceof Client)
.map(c -> ((Client) c).getID()).forEach(System.out::println);
Esto se ve un poco feo. ¿Es posible emitir una transmisión completa a un tipo diferente? ¿Como echar Stream<Object>
a un Stream<Client>
?
Ignore el hecho de que hacer cosas como esta probablemente significaría un mal diseño. Hacemos cosas como esta en mi clase de informática, así que estaba investigando las nuevas características de Java 8 y tenía curiosidad por saber si esto era posible.