JavaのMapインターフェイスとListインターフェイスの両方を実装するオブジェクトが必要です。アイデアは、この問題の問題に似ていますJava Ordered Map私はリストに名前/値のペアを追加し、リストには、シーケンスを保存する持っているだけでなく、名前で検索を行うことができるようにしたいJavaでMapインターフェイスとListインターフェイスの両方を実装しますか?
:
foo.put("name0", "value0");
foo.put("name1", "value1");
foo.get(1); --> Map.Entry("name1", "value1")
foo.get("name0"); --> "value0"
ここ
が問題だ:私はこのクラスを作成するとき:
class Foo implements Map, List {
// add all methods here
}
私は、コンパイルエラーを取得:
"The return type is incompatible with Map.remove(Object)"
public boolean remove(Object o) {
return false;
}
マップとリストのインターフェースを実装していない場合、このデータ構造では使用できないJavaコレクションのメソッドがたくさんあります。
(また、Javaで提案された解決策は、上記の地図を発注した理由は動作しないのLinkedHashMapは、get(int)メソッドを持っていないということである。インデックスでエントリを選択することはできません。)
'LinkedHashMap'を拡張しないのですか?そうでない場合は、' get(int) 'メソッドを追加してみてください。 –
http://www.java.net/forum/topic/jdk/java-se/implementing-both-map-and-list-impossible-0 – Adam
@Adamそのリンクは壊れていますが、 URLからちょうど); – MatrixFrog