代码:
class MyClass {
private String field1;
private Long field2;
//getters and setters also here
}
List<MyClass> myClassList = new ArrayList<>();
//getting my list filled
现在我需要将列表中所有对象的 field1 设置为某个值。我可以用:
forEach(myClassList).setField1("some value");
但是如何动态设置某些字段,将字段名称传递为字符串"field1"或"field2"等?
你问的是 lambdaj 所基于的主要原则。我设计它是为了允许以强类型的方式调用 Bean 的方法。通过这种方式,您可以获得您最喜欢的 IDE 可以为您提供的所有帮助,例如自动完成。此外,如果您决定重命名该方法,您的 IDE 将能够自动为您更改名称,或者至少会出现编译错误,而不是仅在运行时找到问题。