2016-04-11 13 views
2

から発行取得値は私はハッシュテーブルが作成されました:のJava - ハッシュテーブル

Hashtable next_hop = new Hashtable();

は私がnext_hop.putのような値を挿入するように( "R1"、 "ローカル")と...

ハッシュテーブルは次のようになります。

{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(); 
    } 
} 

iは、次のエラーを取得: エラー:互換性のない型必要 String nextHopInt = entry.getValue();

:見つかった文字列

:オブジェクト

+4

生の種類は使用しないでください。 – Savior

答えて

6

したがって、オブジェクトではなく、文字列を返すgetValue()方法あなたが得ているエラー。

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

素晴らしい...その作品! – hnvasa

+5

また、この時点で 'Hashtable'は非常に推奨されておらず、OPは代わりに' HashMap'を使用しなければなりません。このキャストを避けるためには、 'HashMap 'としてパラメータ化する必要があります。 – Tgsmith61591

0

ダウンストリーム(Object - > String)の場合、RHSを明示的にキャストする必要があります。

String nextHopInt = (String)entry.getValue(); 
関連する問題