Вопросы с тегом «stream-processing»

3
Почему я должен использовать «функциональные операции» вместо цикла for?
for (Canvas canvas : list) { } NetBeans предлагает мне использовать «функциональные операции»: list.stream().forEach((canvas) -> { }); Но почему это предпочтительнее ? Во всяком случае, труднее читать и понимать. Вы звоните stream(), затем forEach()используете лямбда-выражение с параметром canvas. Я не вижу, как это лучше, чем forцикл в первом фрагменте. Очевидно, …

3
Это антипаттерн, чтобы использовать peek () для изменения элемента потока?
Предположим, у меня есть поток вещей, и я хочу «обогатить» их серединой потока, я могу использовать peek()это, например: streamOfThings.peek(this::thingMutator).forEach(this::someConsumer); Предположим, что изменение объектов в этой точке в коде является правильным поведением - например, thingMutatorметод может установить в поле «lastProcessed» текущее время. Однако peek()в большинстве случаев означает «смотри, но не трогай». …

4
Что такое поток байтов на самом деле?
Может кто-нибудь объяснить мне, что поток байтов на самом деле содержит? Содержит ли он байты (шестнадцатеричные данные) или двоичные данные или только английские буквы? Меня также смущает термин «необработанные данные». Если кто-то попросил меня «перевернуть 4-байтовые данные», то что я должен предполагать, что это шестнадцатеричный или двоичный код?

3
Разумно ли возвращать потоки везде, где мы обычно возвращаем коллекции?
Разрабатывая мой API, который не привязан к какому-либо устаревшему коду, я часто нахожу себя пишущим методы, которые являются чисто конвейерными потоками и заканчиваются сбором результатов. Как этот: ImmutableSet<T> deriveSomethingMeaningfulFromPrivateState() { return myPrivateThingies.stream() .map(this::ownerOfThing) .map(Owner::socialStatus) .filter(SocialStatus::isHeAFineMatey) .collect(MyCustomCollectors.toImmutableSet()); } Теперь большинству клиентов этого класса обычно требуется Collection (в данном случае ImmutableSet) для …

2
Традиционные брокеры сообщений и потоковые данные
По данным сайта Кафки : « Kakfa используется для создания конвейеров данных в реальном времени и потоковых приложений ». Просматривая Интернет повсеместно, я нашел следующее общепринятое определение понятия « потоковые данные »: Потоковые данные - это данные, которые непрерывно перемещаются из источника в пункт назначения по сети; и Потоковые данные …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.