【问题标题】:Gson gives "unchecked conversion" warningGson 给出“未经检查的转换”警告
【发布时间】:2014-02-05 23:50:11
【问题描述】:

我试图将 json 字符串转换为这样的对象:

String jsonString = "[\"string1\", \"string2\"]";
Gson gson = new Gson();
List<String> list = gson.fromJson(jsonString, List.class);

有这个警告:

warning: [unchecked] unchecked conversion
            list = gson.fromJson(jsonString, List.class);
                                       ^
  required: List<String>
  found:    List

我尝试使用List&lt;String&gt;.class

而不是List.class,但我得到一个编译时错误,说我不能这样做......

我怎样才能摆脱这个警告?

【问题讨论】:

  • 呃,不要将变量声明为List&lt;String&gt;
  • @HotLicks 很好的提示。事实上,正如 Reimeus 所说,String[] 有效。

标签: java json gson


【解决方案1】:

你可以使用数组

String[] array = gson.fromJson(jsonString, String[].class);

或使用TypeToken

Type listType = new TypeToken<ArrayList<String>>() {}.getType();
List<String> list  = gson.fromJson(jsonString, listType);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-05
    • 1970-01-01
    相关资源
    最近更新 更多