Java - 从哈希表中检索值的问题

时间:2016-04-11 15:05:12

标签: java hashtable

我创建了一个哈希表:

Hashtable next_hop = new Hashtable();

我插入的值如next_hop.put(“R1”,“local”)等等......

哈希表如下所示:

{R5=R5, R4=R2, R3=R2, R2=R2, R1=Local}

现在我尝试从键中检索值,如下所示:

String endPoint = "R1";
for (Object o: next_hop.entrySet()) {
   Map.Entry entry = (Map.Entry) o;
   if(entry.getKey().equals(endPoint)){
       String nextHopInt = entry.getValue();
    }
}

我收到以下错误: 错误:不兼容的类型                 String nextHopInt = entry.getValue();

必需:字符串

发现:对象

2 个答案:

答案 0 :(得分:6)

方法getValue()返回一个对象,而不是字符串,因此会出现错误。您可以通过说

来转换值
String nextHopInt = (String) entry.getValue();

答案 1 :(得分:0)

如果它是向下转换(对象 - >字符串),则必须显式转换RHS。

String nextHopInt = (String)entry.getValue();