如何摆脱@SuppressWarnings标签?

时间:2015-06-29 22:49:20

标签: java json dictionary casting gson

我正在尝试拆分字符串并将内容加载到这样的地图中:

@SuppressWarnings("unchecked")
Map<String, List<String>> holder = gson.fromJson(response.split("server=")[1],
        Map.class);
for (Map.Entry<String, List<String>> entry : holder.entrySet()) {
    for (String hosts : entry.getValue()) {
        serverList.add(hosts);
    }
}

我的字符串是这样的:

server={"ABC":["PQR"],"DEF":["HELLO"],"TYU":[]}

现在您可以看到我正在使用@SuppressWarnings("unchecked")来删除Eclipse生成的警告。这是我收到的警告信息:

Type safety: The expression of type Map needs unchecked conversion to conform to Map<String,List<String>>

现在我的问题是 - 除了添加SuppressWarnings代码之外,还有其他方法可以删除此警告消息吗?

1 个答案:

答案 0 :(得分:2)

您可以使用int incorrect_attempts = 0; ArrayList<Integer> falses_before_a_true = new ArrayList<Integer>(); for (int i=0;i<=attempts_list.size()-1;i++){ if (attempts_list.get(i).equals("false")) incorrect_attempts++; else falses_before_a_true.add(incorrect_attempts); }

TypeToken

阅读here以了解final Type type = new TypeToken<Map<String, List<String>>>() {}.getType(); final Map<String, List<String>> holder = gson.fromJson(response.split("server=")[1], type); 的工作原理