0
これは私が正しくこれを行うにはあまりにも難しいようです。Cast TreeMap.Submap戻り値:SortedMap、TreeMapに戻る
私はサブマップを取っていたのTreeMap<Double, (user-defined)Object>
を、持っている:
public static reqObj assignObj(reqObj vArg, int startDate, int endDate){
reqObj vOut=new reqObj();
if (keyAt(vArg.requestObject,startDate)>-1 && keyAt(vArg.requestObject,endDate)>-1){
System.err.println(keyAt(vArg.requestObject,startDate));
System.err.println(keyAt(vArg.requestObject,endDate));
//vOut.requestObject=(TreeMap<Double, dayObj>)
vArg.requestObject.subMap(
keyAt(vArg.requestObject,startDate),
keyAt(vArg.requestObject,endDate));
}
return vOut;
}
これは予想と同じように動作しますが、私は戻って(TreeMap)
に私のソートマップをキャストするために行くとき、私は次のエラーを取得する:
java.lang.ClassCastException: java.util.TreeMap$SubMap
助けがあれば助かります。
短い答えは "いいえ"と答えていますが、長い答えは、.SubmapでTreeMapを送信すると、SortedMapの戻り値を処理する準備ができているということを意識してコードを作成するだけです。 –
@jason m:だからこそ、それは本当に 'TreeMap'なのか別のクラスなのか心配する必要はありません。 – casablanca
あなたは何を言っているのかを読んでもいいでしょうか(インターフェースを通してオブジェクトを扱っていますか?)それは素晴らしいことでしょう。ありがとう! –