如何使用Java7从存储在arraylist中的pojo对象获取键值对

14ifxucb  于 2021-07-08  发布在  Java
关注(0)|答案(1)|浏览(440)

我通过request obj传递一个json,它通过gson转换并存储在arraylist中。我的结构如下:

我想得到所有的键和它的值写在一个文件中。
我试过这个:

protected String add(ArrayList<User> input, HttpServletRequest request,
      HttpServletResponse response, User currentUser) throws APException {
 Map<String, String> map = (Map<String, String>)input.get(0); //to get all the keys of the first object.
      for (String key : map.keySet()){
        System.out.println("Key: " + key + " maps to value: " + map.get(key));
}
}

其中user是一个pojo类,包含所有键字段及其getter/setter方法
但是我得到了:java.lang.classcastexception:com.users.user.service.user不能转换为java.util.map
有谁能建议我如何从数组列表中获取键值对吗。比如我在列表中有大约105个对象,每个对象有大约8个键值对。

plicqrtu

plicqrtu1#

它是存储在map对象中的2个值的解决方案。

Map<String,String> map = new HashMap<>();

    map.put(input.get(0).getFirstName(), input.get(0).getGroupName());

如果您想存储所有值,我建议创建map对象,如下所示:

Map<String,User> map = new HashMap<>();

其中字符串值在此示例键中。

map.put("yourKey", input.get(0));

相关问题