- package sheng.java.language;
- import java.util.*;
- import org.apache.commons.beanutils.BeanUtils;
- public class BeanUtilsDemo {
- /**
- * @param args
- * @throws Exception
- */
- public static void main(String[] args) throws Exception {
- // 创建一个Map集合,添加内容
- Map<String, Object> map = new TreeMap<String, Object>();
- map.put("name", "sunsheng");
- map.put("age", 28);
- // 定义要修改的键和值
- String key = "age";
- Object value = 23;
- // 使用普通迭代的办法修改value
- // 好麻烦,哪位高手有更快捷的方法,分享一下
- Set<Map.Entry<String, Object>> entrys = map.entrySet();
- Iterator<Map.Entry<String, Object>> it = entrys.iterator();
- while (it.hasNext()) {
- Map.Entry<String, Object> entry = it.next();
- if (entry.getKey().equals(key)) {
- entry.setValue(value);
- }
- }
- // 验证修改是否成功
- System.out.println(map);
- // 使用BeanUtils工具修改key对于的value
- BeanUtils.setProperty(map, key, value);
- // 验证被修改的value的值和类型
- it = entrys.iterator();// 复位迭代器,不然下面的while循环执行一次就退出
- while (it.hasNext()) {
- Map.Entry<String, Object> entry = it.next();
- if (entry.getKey().equals(key)) {
- System.out.println(key + "的类型是:"
- + entry.getValue().getClass().getName());
- System.out.println(key + "的值是:" + entry.getValue());
- }
- }
- }
- }
复制代码 |
|