Запитання з тегом «java-stream»

Використовуйте цей тег для питань, пов’язаних із використанням API Stream. Він був введений в Java 8 і підтримує операції в функціональному стилі над потоками значень, такими як фільтр-карта-зменшення трубопроводів для колекцій.

4
Отримайте співробітників до та після конкретної дати приєднання зі списку працівників з потоку Java
Я маю Listв Employeeс з різними датами приєднання. Я хочу отримати працівників до і після конкретної дати приєднання зі Списку за допомогою потоків. я спробував наступний код, List<Employee> employeeListAfter = employeeList.stream() .filter(e -> e.joiningDate.isAfter(specificDate)) .collect(Collectors.toList()); List<Employee> employeeListBefore = employeeList.stream() .filter(e -> e.joiningDate.isBefore(specificDate)) .collect(Collectors.toList()); class Employee{ int id; String name; LocalDate …

5
Як створити кілька потоків для кожного елемента запиту
Я намагаюся обробити код нижче, використовуючи багатопотоковість на рівні замовлення. List<String> orders = Arrays.asList("order1", "order2", "order3", "order4", "order1"); Поточне послідовне виконання: orders.stream().forEach(order -> { rules.forEach(rule -> { finalList.add(beanMapper.getBean(rule) .applyRule(createTemplate.apply(getMetaData.apply(rule), command), order)); }); }); Я спробував використовувати: orders.parallelStream().forEach(order -> {}} // code snippet. Але це змінює правила.forEach (правило -> {}} порядок. …

3
Як скопіювати файли великих даних по черзі?
У мене CSVфайл 35 Гб . Я хочу прочитати кожен рядок і записати його в новий CSV, якщо він відповідає умові. try (BufferedWriter writer = Files.newBufferedWriter(Paths.get("source.csv"))) { try (BufferedReader br = Files.newBufferedReader(Paths.get("target.csv"))) { br.lines().parallel() .filter(line -> StringUtils.isNotBlank(line)) //bit more complex in real world .forEach(line -> { writer.write(line + "\n"); }); …

3
Повернення списку за замовчуванням, якщо список порожній за допомогою java 8 Streams?
Чи є спосіб, щоб нижче можна було виконати як один набір операцій потоку, замість того, щоб чітко перевіряти, чи рекомендованіПродукти порожні, потім повернути список за замовчуванням, ще повернути відфільтрований список ? public List<Product> getRecommendedProducts() { List<Product> recommendedProducts = this.newProducts .stream() .filter(isAvailable) .collect(Collectors.toList()); if (recommendedProducts.isEmpty()) { return DEFAULT_PRODUCTS; } return recommededProducts; …

4
Ефективний спосіб ітерації та копіювання значень HashMap
Я хочу конвертувати: Map<String, Map<String, List<Map<String, String>>>> inputMap до: Map<String, Map<String, CustomObject>> customMap inputMapнадається в конфігурації і готово, але мені потрібно customMapФорматувати. CustomObject буде отриманий з List<Map<String, String>>використання декількох рядків коду у функції. Я спробував нормальний спосіб ітерації вхідної карти та копіювання ключових значень у customMap. Чи є якийсь ефективний …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.