I have two objects of same type.
Class A{
String a;
List b;
int c;
}
A obj1= new A();
A obj2 = new A();
obj1 => {a = "hello";b=null;c=10}
obj2 => {a=null;b= new ArrayList();c=default value}
Can you please let me know what is the best way to combine this objects into single object?
obj3 = {a = "hello";b=(same arraylist from obj2);c=10}
解决方案
Maybe something like
class A {
String a;
List<..> b;
int c;
public void merge(A other) {
this.a = other.a == null ? this.a : other.a;
this.b.addAll(other.b);
this.c = other.c == 0 ? this.c : other.c;
}
}
A a1 = new A();
A a2 = new A();
a1.a = "a prop";
a2.c = 34;
a1.merge(a2);
A.merge might return a new A object instead of modifing current.
本文讨论如何在Java中合并两个具有相同类型的对象,特别是当对象包含基本类型和集合属性时。提出了一种通过`merge`方法实现对象属性合并的方案,该方法可以智能地处理null值和默认值。通过调用`merge`方法,对象的属性被有效地整合到一个新的或已存在的对象中。
1207

被折叠的 条评论
为什么被折叠?



