現在、双方向マップを作成しようとしています(私が見る限り)Javaでは提供していません。私のコードは以下の通りです。 Eclipseは私にエラー与えている双方向マップを作成するときに "方法の消去は別の方法と同じです"
private static final class ColourCharTwoWayMap<E,F> {
private ArrayList<E> eArrayList;
private ArrayList<F> fArrayList;
private ColourCharTwoWayMap() {
eArrayList = new ArrayList<E>();
fArrayList = new ArrayList<F>();
}
public void put(E colour, F ch) {
eArrayList.add(colour);
fArrayList.add(ch);
}
public F get(E colour) throws ArrayIndexOutOfBoundsException {
return fArrayList.get(eArrayList.indexOf(colour));
}
public E get(F ch) throws ArrayIndexOutOfBoundsException {
return eArrayList.get(fArrayList.indexOf(ch));
}
}
「メソッドget(E)の消去は型SaveManager.ColourCharTwoWayMap内の別の方法と同じです」。グーグルでは、Javaは同じことをするジェネリックメソッドや、オーバーライドとは何か、Javaではどのメソッドを使用するのかわからないことを理解しています。それはすべて私の頭の上に少しです。
上記のやり方をするより良い方法はありますか? (つまり、E型のオブジェクトを取り、F型のオブジェクトを返し、その逆のメソッドを返す)。
ジャスト側の質問、なぜあなたが内部的に地図を使用していませんか? – Koekje