java-stream 相关问题

使用此标记可以获得与使用Stream API相关的问题。它是在Java 8中引入的,支持对值流进行功能样式的操作,例如集合上的filter-map-reduce管道。

调用与获取 ForkJoinPool [重复]

前提:我对并发不是很熟悉。 看一下这段代码: 导入java.util.List; 导入 java.util.concurrent.ForkJoinPool; 导入 java.util.concurrent.atomic.AtomicInteger; 导入...

回答 1 投票 0

为什么我的Java流代码输出类似“streamsapi.product@5b480cf9”的值? [重复]

我正在检查此代码以使用流 API 在集合数据中进行过滤。 我应该得到满足我的条件的两种产品的清单 但我得到解密格式的输出。 包

回答 1 投票 0

使用 Java Streams api 比较两个不同的 Java 集合对象与公共属性

我有两个包含 2 个不同对象的集合 1. 设置 2. 设置 A类{ 私有字符串 ID; 私有字符串名称; 私有B objB; } B类{ ...

回答 1 投票 0

Java Stream,需要更新列表对象列表

测试.java 私有字符串名称; 私有列表内部列表=新的ArrayList(); 内部列表.java 私有字符串 ID; 私人长x; 私人长 y; [Tes 班...

回答 1 投票 0

如何根据另一个列表中包含的属性对 Java 对象列表进行排序?

有没有办法按另一个列表包含的属性对对象列表进行排序? 例如,我尝试按 Stri 的 ArrayList 模型的值对 CustomObjects 的 ArrayList customObjects 进行排序...

回答 2 投票 0

如何实现动态运行时查询来过滤Java对象流

假设我有一个以下类型的对象列表: 公共类员工{ 私有字符串 emplId; 私人姓名名称; 私人字符串部门; 私人字符串城市; } 我有以下...

回答 1 投票 0

在Java中根据某些条件智能地设置不同的字段值

如何在Java中根据某些条件智能地设置不同的字段值? 在 Java 类中,具有类似类型的字段,例如: 公共类用户{ 私有字符串 user_Id_1; 私人

回答 1 投票 0

使用 Stream.ofNullable() 和 Stream() 有什么区别?

在 Java 11 中使用 Streams 时,我注意到以下情况。我尝试在非空列表上以两种不同的方式使用 Stream API。 第一种方式: 集合 类别ID ... 在 Java 11 中使用 Streams 时,我注意到以下情况。我尝试在非空列表上以两种不同的方式使用 Stream API。 第一种方式: Collection<Object> categoryIds = List.of(1L, 2L, 3L, 4L); List<String> nullable = Stream.ofNullable(categoryIds) .map(Object::toString) .collect(Collectors.toList()); 第二种方式: Collection<Object> categoryIds = List.of(1L, 2L, 3L, 4L); List<String> nullable = categoryIds.stream() .map(Object::toString) .collect(Collectors.toList()); 我尝试的两种方法导致了两种不同的结果。第一种方式的结果列表是包含单个元素的字符串。该字符串是: "[1, 2, 3, 4]" 第二种方式给出了期望的和预期的结果。返回包含 4 个元素的结果列表:"1", "2", "3", "4"。 这种行为是预期的吗?还是有问题? Stream.ofNullable您正在创建一个具有单个元素的Stream对象 返回包含单个元素的顺序 Stream,如果非 null,则返回空 Stream。 Collection.stream - 它按顺序创建带有集合元素的流对象 返回以此集合作为源的顺序 Stream。 并且Collection.stream相当于stream.of(T...values)方法

回答 1 投票 0

在 Java 8 中使用多个字段进行分组和计数

我在数据库中有一个 Person 表,关联的域类如下所示: 公共类人{ 私有字符串名字; 私有字符串第二名; 私有字符串引用...

回答 1 投票 0

转换列表<List<TextValue>> 为列表<Map<String, String>>

我有这个输出 JSON。它来自于这个类型 列表> TextValue类是String文本,String值。 “数据”: [ [ { "text": "描述码...

回答 2 投票 0

在 Java Stream 上调用收集方法出现意外结果

我正在尝试理解这个Java Stream方法 R 收集(供应商 供应商, BiConsumer 累加器, 双消费者 我正在尝试理解这个Java Stream方法 <R> R collect(Supplier<R> supplier, BiConsumer<R, ? super T> accumulator, BiConsumer<R, R> combiner); 下面的代码应该给出结果 55 put 而不是 0 被打印出来。 有人可以向我解释一下出了什么问题以及如何更改它以便打印 55 吗? List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5); // Create a supplier that returns a new mutable result container, in this case an Integer accumulator. Supplier<Integer> supplier = () -> 0; // Create an accumulator that adds the square of the current element to the result container. BiConsumer<Integer, Integer> accumulator = (result, element) -> result += element * element; // Create a combiner that adds two result containers together. BiConsumer<Integer, Integer> combiner = (result1, result2) -> result1 += result2; // Collect the results of the reduction operation into a single Integer value. Integer sumOfSquares = numbers.stream().collect(supplier, accumulator, combiner); System.out.println(sumOfSquares); // 55 您正在处理不可变的整数/整数。因此,累加器和组合器都不会改变结果。因此保持为 0。 您可以通过使用像 AtomicInteger 这样的可变对象来执行操作并使用完成器将其转换回 Integer 来避免此问题: public static void main(String[] args) { List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5); // Create a supplier that returns a new mutable result container, in this case an Integer accumulator. Supplier<AtomicInteger> supplier = () -> new AtomicInteger(0); // Create an accumulator that adds the square of the current element to the result container. BiConsumer<AtomicInteger, Integer> accumulator = (result, element) -> result.getAndAdd(element * element); // Create a combiner that adds two result containers together. BinaryOperator<AtomicInteger> combiner = (result1, result2) -> { result1.set(result1.getAndAdd(result2.get())); return result1; }; Function<AtomicInteger, Integer> finisher = AtomicInteger::get; // Collect the results of the reduction operation into a single Integer value. Integer sumOfSquares = numbers.stream().collect(Collector.of(supplier, accumulator, combiner, finisher)); System.out.println(sumOfSquares); // 55 }

回答 1 投票 0

Java Stream:类 java.util.LinkedHashMap 无法转换为类 RealmRole

在我的 springboot 项目中,我有一个名为 模型 这里我有一个类 RealmRole: 公共类 RealmRole { 私有字符串 ID; 私有字符串名称; 公共领域角色(){ } 公共字符串 getId(...

回答 2 投票 0

使用 Java 流从列表中获取具有重复属性的所有对象

我有以下问题: 目标:我实际上想要所有具有基于“名称”的重复项的“城市”实例。 限制:我需要使用流。 错误:没有错误。

回答 3 投票 0

根据对象的参数和值将Map<T, Value>转换为List<T>

我有一个地图MapmetricResultToComputationTime。 MetricResult 有一个方法 MetricResult::getEndTime。 我想要一个 List,其中每个 MetricResult 都有一个

回答 1 投票 0

向 ExecutorService 提交任务时并行流如何工作?

我是一家软件公司的顾问,负责使用我的开发同事构建的不同工具为我们的客户提供支持。 我对 Java 的经验很少,但我确实尝试阅读代码......

回答 1 投票 0

使用 Java Stream 功能 - 如果要在循环内执行多个语句

如何使用 Java Stream 功能 - 如果要在循环内执行多个语句: 代码片段: PDAcroForm pdAcroForm = pdfDocument.getDocumentCatalog().getAcroForm(); JSONObject jsonDat...

回答 1 投票 0

将流变成可迭代? [重复]

Stream 继承了 iterator() 方法来生成 Iterator。 但我需要一个 Iterable 而不是 Iterator。 例如,给定这个字符串: 字符串输入=“这个 ” + “那 ” + ”

回答 2 投票 0

使用 Spring 将内容从 SQL/DAO 流式传输到文件中的浏览器

所以我遇到了这个问题,我需要将巨大的 SQL 结果(数百万行)作为文件返回给客户端。 为了解决这些问题,我将它们分为两部分: 将 SQL 结果从 DAO 流式传输到服务 l...

回答 1 投票 0

多线程 Kotlin 测试中出现 AllureLifecycle 错误

我在 UserManager 类中有一个 @Step 注释的 Kotlin 方法,它向 SQL 数据库添加一个条目: @Step("插入记录") 有趣的插入全部( 配置文件ID:字符串, ){ userDAO.insertAll(...

回答 1 投票 0

如何替换使用 Java 8 流 API 设置某些值的嵌套三重 for 循环?

我正在尝试浏览 3 个列表(嵌套三重 for 循环)并根据匹配设置一些值。下面是一个类表示以及我正在迭代并执行这些操作的三重 for 循环...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.