Чи можливо викинути потік в Java 8? Скажімо, у мене є список об'єктів, я можу зробити щось подібне, щоб відфільтрувати всі додаткові об’єкти:
Stream.of(objects).filter(c -> c instanceof Client)
Однак після цього, якщо я хочу щось зробити з клієнтами, мені потрібно буде передати кожного з них:
Stream.of(objects).filter(c -> c instanceof Client)
.map(c -> ((Client) c).getID()).forEach(System.out::println);
Це виглядає трохи некрасиво. Чи можна передавати весь потік іншому типу? Як кинути Stream<Object>
до Stream<Client>
?
Будь ласка, ігноруйте той факт, що робити такі речі, ймовірно, означатиме поганий дизайн. Ми робимо подібні речі в моєму класі інформатики, тому я розглядав нові можливості java 8 і мені було цікаво, чи це можливо.