gpt4 book ai didi

Java 使用 Stream 初始化对象并设置属性

转载 作者:行者123 更新时间:2023-11-30 01:59:48 26 4
gpt4 key购买 nike

我正在尝试将列表克隆到新列表并在新列表中设置属性。我正在尝试使用 Java8 Stream,因为它使克隆变得简单。我的代码可以工作,但它从声纳中发出了代码气味:

Local variables should not be declared and then immediately returned or thrown (squid:S1488)

有没有办法在不使用局部变量的情况下做到这一点?代码:

List<myObject> clonedList = listToClone.stream()
.map(item -> {
cloned = new myObject(item);
cloned.setLifeCycle("someLifeCycle");
return cloned;
})
.collect(Collectors.toList());

谢谢

最佳答案

这是一个警告,因为您不必要地使用了新变量克隆,而不是直接链接函数,例如

List<myObject> clonedList = listToClone.stream()
.map(item -> {return (new myObject(item)).setLifeCycle("someLifeCycle");})
.collect(Collectors.toList());

关于Java 使用 Stream 初始化对象并设置属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53259891/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com