我的情况要求将Integer添加到Hashmap值,因为我需要根据整数对列表进行排序。我在做如下
Map hmInspStatus = new HashMap();
hmInspStatus.put("Name",Integer.parseInt(strIRName.substring(2,strIRName.length())));
系统抛出一条错误消息,说我无法向HashMap添加整数。我引用了网站中的一些帖子并建议使用HashSet,但是可以将Key,value添加到HashSet吗?
有人可以帮助我实现我想要的目标吗?
由于
答案 0 :(得分:1)
Modern Java使用generic数据结构。使用给定的泛型类型,Java将处理原始类型的自动装箱。
Map<String, Integer> hmInspStatus = new HashMap<String, Integer>();
hmInspStatus.put("Name",Integer.parseInt(strIRName.substring(2,strIRName.length())));
更新:OP正在使用Java 1.3。此版本不仅不支持泛型,也不支持自动装箱。在这种情况下,您必须跳过泛型并使用手动装箱,或直接从Integer
构建String
。
Map hmInspStatus = new HashMap();
hmInspStatus.put("Name", new Integer(strIRName.substring(2,strIRName.length())));
答案 1 :(得分:0)
执行:
Map hmInspStatus = new HashMap();
hmInspStatus.put("Name",(Integer)Integer.parseInt(strIRName.substring(2,strIRName.length())));