- ベストアンサー
ジェネリックのキャストをしたいです
ArrayList<Double>型の変数を、 ArrayList<Integer>型にキャストすることはできますか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
そういう反応が来るとは思わなかった (苦笑) T とか U とかいうのはジェネリックの型引数です. つまり, #1 を今の例に即して言うと 「Double から Integer にキャストできれば ArrayList<Double> から ArrayList<Integer> にキャストできる」 という規則だったはず.
その他の回答 (2)
- Yanch
- ベストアンサー率50% (114/225)
回答No.2
互換性のないデータ型へのキャストはしてはいけません。 ArrayList<Double>型から、ArrayList<Integer>への変換なら、 変換用のメソッドを用意するとよいでしょう。
質問者
お礼
なるほど!! ありがとうございました!! 変換用のメソッドを用意することにします。
- Tacosan
- ベストアンサー率23% (3656/15482)
回答No.1
T から U へのキャストができれば ArrayList<T> から ArrayList<U> へのキャストができた, ような気がする.
質問者
お礼
TからUですか?? TとUについて調べてみます。
お礼
なるほど、そういうキャストの規則があるんですね。 勉強になりました!! ありがとうございます!!