GSON ClassCast异常无法从对象转换为字符串

时间:2015-04-19 13:56:24

标签: java gson

        List<Object> l = new ArrayList<Object>();
        l.add("abc");
        String s = (String) l.get(0); /////// No Exception here
        System.out.println(l); 
        String json = gson.toJson(l);
        System.out.println(json);
        Type t = new TypeToken<List<Object>>() {
        }.getType();
        List<Object> dl = gson.fromJson(json, t);
        String ds = (String) dl.get(0); /////Class Cast Exception here

做类似上面的事情。我正在尝试序列化对象列表。其中的第一个元素是String,但是当我反序列化列表并将第一个元素读取到字符串时,它会抛出classcastexception。在序列化之前将第一个元素读取到字符串时没有例外。

这背后的原因是什么?

1 个答案:

答案 0 :(得分:1)

我有一个旧版本的GSON 1.4。

将其更新为2.2.4版本。