问题描述
我有一个哈希表,我声明为:
Hashtable<Long,Long> sumhash = new Hashtable<Long,Long>();
现在,当我使用以下方法检查是否存在密钥时:
if(sumhash.containsKey(diff) == true){
start = sumhash.get(diff);
} //diff contains a Long value.
它在我检查散列表中是否存在 diff
时有效,但是当我尝试使用 get()
方法获取 vaule 时,它给了我 error: incompatible types: Long cannot be converted to int
我是 Java 新手,提前致谢。
解决方法
你应该使用 .intValue() 来转换它。 这里的问题是,在哈希表中,您将值存储为 Long 对象,因此您需要的不仅仅是括号来转换。这是更全面的解释:https://www.javatpoint.com/java-long-to-int