Вопросы по теме 'java-stream'
Java 8 parallelStream() с сортировкой()
JDK 8 EA уже вышел, и я просто пытаюсь привыкнуть к лямбде и новому Stream API. Я пытался отсортировать список с параллельным потоком, но результат всегда неправильный:
import java.util.ArrayList;
import java.util.List;
public class Test
{...
18769 просмотров
schedule
30.01.2024
Почему BufferedReader не закрывается при получении `Stream‹String›` в попытке с ресурсами?
Читатель должен быть закрыт, когда Stream используется в попытке с ресурсами.
Учитывая это:
try(Stream<String> lines = new BufferedReader(reader).lines()) {
return lines.map(it -> trim ? it.trim() : it)...
814 просмотров
schedule
10.10.2023
Пример метода Java 8 Streams FlatMap
Я проверял предстоящие Java update , а именно: Java 8 or JDK 8 . Да, я нетерпелив, есть много нового, но есть кое-что, чего я не понимаю, какой-то простой код:
final Stream<Integer>stream = Stream.of(1,2,3,4,5,6,7,8,9,10);...
122445 просмотров
schedule
26.07.2023
Ссылки на методы Java 8: предоставить поставщика, способного предоставить параметризованный результат
Я бы хотел использовать
java.util.Optional.orElseThrow()
с типом Exception, который запрашивает параметр конструктора. Что-то вроде этого:
.orElseThrow(MyException::new(someArgument)) // obviously NOT working
Есть ли способ создать...
124000 просмотров
schedule
27.08.2023
Поток Java 8 IllegalStateException
Я пытаюсь вычислить простые числа с помощью потоков Java8, но получаю исключение IllegalStateException: поток уже обработан или закрыт.
Это мой код:
package experimentations.chapter02;
import java.util.stream.Stream;
public class PrimesStream...
2610 просмотров
schedule
18.05.2024
Группировка Java 8 от одного ко многим
Я хочу научиться использовать синтаксис Java 8 с потоками и немного застрял.
Достаточно легко группировать по, когда у вас есть один ключ для каждого значения. Но что, если у меня есть список ключей для каждого значения, и я все еще хочу...
6723 просмотров
schedule
08.04.2023
Stream API и очереди: подписка на BlockingQueue в стиле потока
Допустим, у нас есть очередь
BlockingQueue<String> queue= new LinkedBlockingQueue<>();
и какой-то другой поток помещает в него значения, тогда мы читаем это как
while (true) {
String next = queue.take();...
16674 просмотров
schedule
14.06.2023
Как я могу использовать потоки Java 8 с InputStream?
Я хотел бы обернуть java.util.streams.Stream вокруг InputStream для обработки одного байта или одного символа за раз. Я не нашел простого способа сделать это.
Рассмотрим следующее упражнение. Мы хотим подсчитать, сколько раз каждая буква...
27663 просмотров
schedule
26.12.2023
Java 8, метод сбора, создание нового массива и мутация
Я просто хочу уточнить кое-что относительно кода ниже:
public static void ageOverTen(final List<Human> man) {
final List<Human> byAge = man.stream()
.filter(age -> age.getAge() > 10)...
1353 просмотров
schedule
27.02.2024
Прерывание выполнения параллельного потока
Рассмотрим этот код:
Thread thread = new Thread(() -> tasks.parallelStream().forEach(Runnable::run));
tasks — это список Runnable, которые должны выполняться параллельно. Когда мы запускаем этот поток, и он начинает свое выполнение, то в...
3766 просмотров
schedule
19.09.2022
Список фильтрации со значениями, допускающими значение NULL
Я пытаюсь заменить существующий цикл лямбда-выражениями Java.
У меня есть простая структура данных, которая выглядит следующим образом:
class DbObject{
private Long objectId;
private Long basedOnObjectId; //<- this field can be...
1840 просмотров
schedule
22.09.2023
Бесконечный поток и фильтр
Я новичок в Java 8 Stream API и на самом деле не понимаю, почему мой код не работает:
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class StreamExample {
public static void main(String[]...
1178 просмотров
schedule
30.08.2023
Эквивалент Scala dropWhile
Я изо всех сил пытаюсь найти способ пропустить некоторые элементы в начале потока в зависимости от предиката.
Что-то вроде этого:
dropWhile( n -> n < 3, Stream.of( 0, 1, 2, 3, 0, 1, 2, 3, 4 ) )
.forEach( System.out::println );
3...
2678 просмотров
schedule
22.09.2022
Одиночный поток Java 8‹String› из содержимого папки
Новичок в Java 8 и практикую Streams и Lambdas .
Я пытаюсь создать Stream<String> из содержимого файлов папки. Это то, что я безуспешно пробовал:
Stream<String> lineStream =...
1483 просмотров
schedule
19.05.2022
Группировать и суммировать объекты, как в SQL, с лямбда-выражениями Java?
У меня есть класс Foo с этими полями:
id:int/name;String/targetCost:BigDecimal/actualCost:BigDecimal
Я получаю массив объектов этого класса. например.:
new Foo(1, "P1", 300, 400),
new Foo(2, "P2", 600, 400),
new Foo(3, "P3", 30,...
59042 просмотров
schedule
14.05.2024
Как обрабатывать фрагменты файла с помощью java.util.stream
Чтобы познакомиться с потоковым API, я попытался написать довольно простой шаблон.
Проблема . Текстовый файл содержит не вложенные блоки текста. Все блоки идентифицируются начальными/конечными шаблонами (например, <start> и <stop>...
653 просмотров
schedule
30.04.2022
Java 8: применение карты потока и фильтра за один раз
Я пишу парсер для файла в Java 8. Файл читается с использованием Files.lines и возвращает последовательный Stream<String> .
Каждая строка сопоставляется с объектом данных Result следующим образом:
Result parse(String _line) {
//...
8127 просмотров
schedule
01.02.2024
Закрывают ли терминальные операции над потоками источник?
Рассмотрим следующий код:
Path directory = Paths.get(/* some directory */);
Files.list(directory).forEach(System.out::println);
Закрывает ли терминальная операция (например, forEach ) базовый файл, который был открыт?
См. соответствующие...
2975 просмотров
schedule
13.04.2024
Самый эффективный способ получить последний элемент потока
Stream не имеет метода last() :
Stream<T> stream;
T last = stream.last(); // No such method
Какой самый элегантный и/или эффективный способ получить последний элемент (или null для пустого потока)?
50732 просмотров
schedule
23.06.2023
Поиск значения перечисления с помощью Java 8 Stream API
Предположим, что существует простое перечисление с именем Type, определенное следующим образом:
enum Type{
X("S1"),
Y("S2");
private String s;
private Type(String s) {
this.s = s;
}
}
Поиск правильного...
76268 просмотров
schedule
01.12.2022