【发布时间】:2013-05-01 04:38:51
【问题描述】:
我有一些数据存储在 Java 元素中,我需要以给定的格式返回它 - JSONObject。虽然我的实现工作正常,但我仍然收到来自 eclipse 的警告消息(版本:Juno Service Release 2):
"类型安全:方法 put(Object, Object) 属于原始类型 HashMap。对泛型类型 HashMap 的引用应参数化"
这是我的代码:
public interface Element {...}
public abstract class AbstractElement implements Element {...}
public final class Way extends AbstractElement {...}
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
public class WayToJsonConverter{
...
public JSONObject wayToJson(){
JSONObject obj = new JSONObject();
obj.put("id",way.getId());
...
return obj;
}
...
}
有问题的行是:obj.put("id",way.getId());
除了添加@SuppressWarnings("unchecked")之外,有没有办法解决这个问题?
【问题讨论】:
-
getId()的返回类型是什么? -
返回类型为:字符串
-
这样的话
obj.put("id",way.getId());就没有问题了。它必须是其他一些发出警告的行! -
如果您将
import部分添加到代码 sn-p 中会很有帮助。
标签: java json eclipse generics