java 反射 转换,通过Java中的反射来转换对象

该博客展示了如何利用Apache Commons BeanUtils库将字符串转换为整数,特别是在Java bean中。通过示例代码,演示了如何使用BeanUtils.setProperty方法设置bean属性,将字符串'1'转换为int类型的数字,并且说明了即使bean只有setter方法也能正常工作。
摘要由CSDN通过智能技术生成

正如Peter Lawrey所说,转换不会将字符串转换为整数。

如果您的bean遵循标准bean约定(即您有getter和ampter),那么您可以使用BeanUtils。 BeanUtils会执行一些标准转换,您可以通过添加Convertor来添加更多内容。

请参阅以下示例:

import org.apache.commons.beanutils.BeanUtils;

public class BeanUtilsTest {

public static class Obj {

private int number;

private String string;

public void setNumber(int number) {

this.number = number;

}

public void setString(String string) {

this.string = string;

}

public String toString() {

return "number=" + number + " string=" + string;

}

}

public static void main(String args[]) throws Exception {

String[] values = new String[] { "1", "two" };

String[] properties = new String[] { "number", "string" };

Obj obj = new Obj();

for (int i = 0; i < properties.length; i++) {

BeanUtils.setProperty(obj, properties[i], values[i]);

}

System.out.println("obj=" + obj);

}

}这产生了输出:

obj=number=1 string=two请注意,上面的示例只有setter,但仍然有效。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值