hutool 对象拷贝
时间: 2023-08-31 09:10:39 浏览: 151
Hutool提供了多种对象拷贝的方法,以下是其中两种常用的方法:
1. BeanUtil.copyProperties(source, target)
这是最常用的对象拷贝方法,可以将源对象的属性值拷贝到目标对象中。示例如下:
```java
// 定义源对象
public class SourceObject {
private String name;
private Integer age;
// getters/setters
}
// 定义目标对象
public class TargetObject {
private String name;
private Integer age;
// getters/setters
}
// 创建源对象
SourceObject source = new SourceObject();
source.setName("Tom");
source.setAge(18);
// 创建目标对象
TargetObject target = new TargetObject();
// 拷贝属性值
BeanUtil.copyProperties(source, target);
```
2. CloneSupport.clone()
这是一个基于反射的对象拷贝方法,可以将一个对象的属性值拷贝到另一个对象中。示例如下:
```java
// 定义源对象
public class SourceObject implements Cloneable {
private String name;
private Integer age;
// getters/setters
@Override
public Object clone() {
return CloneSupport.clone(this);
}
}
// 定义目标对象
public class TargetObject {
private String name;
private Integer age;
// getters/setters
}
// 创建源对象
SourceObject source = new SourceObject();
source.setName("Tom");
source.setAge(18);
// 创建目标对象
TargetObject target = new TargetObject();
// 拷贝属性值
CloneSupport.clone(source, target);
```
需要注意的是,如果要对自定义对象进行拷贝,需要实现Cloneable接口并重写clone()方法。
阅读全文