Java:无需迭代即可替换POJO的某个参数

Java:无需迭代即可替换POJO的某个参数,java,collections,Java,Collections,我有一些物品清单: List<Object> objectList = new ArrayList<>(); 我想将我的对象列表中的所有“name”参数指定/替换为一个值,即:“Andrew” 通常我会通过迭代来完成,但是有没有一种不用迭代的方法呢?我已尝试collections.replaceAll,但失败: Collections.replaceAll(objectList, object, new Object.setName("Andrew")); 将名称字段

我有一些物品清单:

List<Object> objectList = new ArrayList<>();
我想将我的对象列表中的所有“name”参数指定/替换为一个值,即:“Andrew”

通常我会通过迭代来完成,但是有没有一种不用迭代的方法呢?我已尝试collections.replaceAll,但失败:

Collections.replaceAll(objectList, object, new Object.setName("Andrew"));

将名称字段设置为
static
只能实现此目的。否则,您必须对其进行迭代。

这怎么不是迭代呢?这是一种功能样式,看起来像Java 8,我不能在我的项目中使用它。很抱歉,也许这个答案对其他人会有帮助。如果不对多个对象进行迭代,您就不能对多个对象调用方法。为什么这是一个问题呢?在这种情况下“不迭代”的要求是不可能的。通过语法糖实现“一条线”的方法够了吗?你的意思是使用Java8?你能详细说明具体的方法吗?我这样尝试过,但显然是错误的:
modelList.replaceAll(modelList,modelOne.getName(),modelOne.setName(“andrew”)将字段设置为
静态
将使所有
对象
实例共享该字段,因此它们的值始终相同。在不太可能的情况下,这是您可以接受的行为,请阅读a,以便您更好地理解其含义。谢谢@丹尼斯。您可以这样做
modelList.get(0).setName(“andrew”)将替换列表中所有对象的代码。正如@Xavi所提到的,这将是共享字段。没有迭代的情况下,使用实例变量是不可能满足需求的。谢谢,但这并不符合我的需求。我想没有迭代就没有办法做到这一点。非常感谢。
Collections.replaceAll(objectList, object, new Object.setName("Andrew"));
objectList = objectList.forEach(object -> object.setName("Andrew"));