java 实体bean 的比较,并获取2个实体中不同的属性

2024-12-31 13:28:17
推荐回答(5个)
回答1:

重写student 的toString 方法 直接比较对象就行了

如果在精确些的重写hashcode方法

public class Student {

private String id;
private String name;
private String add;

public String getId() {
return id;
}

public void setId(String id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getAdd() {
return add;
}

public void setAdd(String add) {
this.add = add;
}

@Override
public String toString() {
return "Student [id=" + id + ", name=" + name + ", add=" + add + "]";
}

}

自己封装这个对象 打印下试试

也可以采用 这个是第三方实现的
zhongtyler|五级
使用apache的beanutil 可以遍历属性名称,和属性内容

回答2:

1应该是id 123 是?num属性 张三是name属性

if(!(s1.getId().equals(s2.getId()))){
syso("id不同");
}
if(!(s1.getNum().equals(s2.getNum()))){
syso("Num不同")
}
if(!(s1.getName().equals(s2.getName()))){
syso("name不同");
}
不知道你的需求是什么,如果找不同 这样可以找出来

回答3:

使用apache的beanutil 可以遍历属性名称,和属性内容。

回答4:

阿勇java:
这个没什么捷径,逐个属性的比较吧。
像这样的比较,完全可以在数据库环境中实现啊!不要在代码中完成,很浪费资源,而且效率还不高。

回答5:

你的原始需求是啥?说来听听,或许有其他方法