3

TreeMap整数を整数にのみマッピングできる拡張クラスを作成したいと考えています。単にすべてをにキャストするよりも、これを行うためのより良い方法はありIntegerますか?

4

3 に答える 3

3

クラスを次のように宣言してみてください

class MyTreeMap extends TreeMap<Integer, Integer> {

MyTreeMapsのみを処理したいことがわかっているため、 には型パラメーターがないことに注意してくださいInteger

于 2013-06-20T17:46:37.947 に答える
2

何も拡張またはキャストする必要はありません。ジェネリックを使用する:

Map<Integer, Integer> foo = new TreeMap<Integer, Integer>();

...これで完了です。

于 2013-06-20T17:43:47.950 に答える
1

考慮したいのは、次のように Map インターフェースを実装することです。

class MyIntegerMap implements Map<Integer,Integer>  
{  
     private TreeMap<Integer,Integer> internalTreeMap;  
     ...  


    public Integer put(Integer key, Integer value)  
     {  
          interalTreeMap.put(key,value);
     }  
}  

これにより、すでに定義されている TreeMap 関数を利用できるようになり (手動でロールした場合のパフォーマンスに関するすべての問題を回避できます)、サブクラスの有効な入力タイプを制限できます。

于 2013-06-20T17:53:04.040 に答える