【初心者】Java質問・相談スレッド123【歓迎】at TECH
【初心者】Java質問・相談スレッド123【歓迎】 - 暇つぶし2ch503:デフォルトの名無しさん
09/02/06 00:09:09
>>496
class HogeComparatorA implements Comparator<MyClassA>{
public int compare(MyClassA o1, MyClassA o2){return o1.tehe(o2);};
}
class HogeComparatorB implements Comparator<MyClassB>{
public int compare(MyClassB o1, MyClassB o2){return o1.hehe(o2);};
}

って書く代わりに

class HogeComparatorT<T> implements Comparator<T>{
public int compare(T o1, T o2){
String method="";
if(o1.getClass().equals("MyClassA")){method="tehe";}
if(o1.getClass().equals("MyClassB")){method="hehe";}
try{
return (Integer)(o1.getClass().getMethod(method,o2.getClass()).invoke(o1,o2));
} catch (Exception e) {e.printStackTrace();return 0;}
};
}

って書いて、

Arrays.sort(a, new HogeComparatorT<MyClassA>());
Arrays.sort(b, new HogeComparatorT<MyClassB>());

って呼び出したいのかな?


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch