我从数据库取出数据放到list中想要将list转化为Map
System.out.println(list1.get(0));
打印出来的结果是 :uname:李华
list里面是以Map的格式存在的,怎么把list强制转化为Map,使用以下代码时出错了
Map maps = (Map) list1.get(0);
Exception in thread "main" java.lang.ClassCastException: java.lang.String cannot be cast to java.util.Map
从异常来看,你的 list 中的元素类型不是 Map 而是 String 类型的。
所以还是需要检查你的封装返回的代码,保证是 List 的元素是 Map 类型才可以。
新手?你用的是原生JDBC还是什么框架Hibernate还是MyBatis?
你是要将List转换为Json数据吗?
你这个提问有点模糊啊,你如果用jdbc的话返回的是:resultset对象,如果用的mybatis框架的话,倒是可以返回一个List 对象。
但是从你的打印结果和报错信息看,你返回的list是一个字符串集合,不是map 所以你强转的时候会报错 类转换错误。
能说一下你用的什么框架吗?
Map maps = new HashMap();
String uname = list1.get(0);
maps.put("uname",uname);
//for (User user : list1) {
//maps.put(user.getName(),uname);
//}