这是我的HashMap对象:
public static Map<String, Integer> kart = new HashMap<String, Integer>();
String pIndex="Any Index Value";
int value=anyIntegerValue;
更新卡丁车的代码:
Globals.kart.put(pIndex, value);
检查索引和获取值的代码:
String inKart = "Product is not in Kart";
if(Globals.kart.containsKey(pIndex)){
int count = Globals.kart.get(pIndex);
inKart = "Product is in Kart " + count;
}
System.out.print(inKart);
它成功检查了密钥,但是当它试图根据密钥从卡丁车获取值时,它会抛出异常,字符串资源ID#0x1 。
No package identifier when getting value for resource number 0x00000001
android.content.res.Resources$NotFoundException: String resource ID #0x1
所有示例都显示我可以使用String键获取值,但它对我不起作用。我在这里做错了什么?
修改
我编辑了一些打字错误,并将一些变量名称重写为我在原始代码中编写的内容。
请注意,如果我使用 containsKey(pIndex)检查密钥,则不会出现任何错误。仅在行 kart.get(pIndex)。
中发生异常有些评论提到错误与HashMap无关。如果是这种情况,请解释为什么此代码仅在Android中抛出该特定行的异常。
答案 0 :(得分:0)
HashMap返回一个整数值,在TextView中被伪装成整数或char。所以我用String明确地对它进行了类型化,一切都很好。
再次感谢。
Ram Ram