北海道苫小牧市出身の初老PGが書くブログ

永遠のプログラマを夢見る、苫小牧市出身のおじさんのちらしの裏

配列のキャスト

java初心者であることを痛感しました。

以下のコードがClassCastExceptoinで動かないのです。

ArrayList list = new ArrayList();
list.add("hoge");
String[] array = (String[]) list.toArray();

ArrayListから戻ってくる実体はObjectなので、Stringにはできないと。

String[] array = 
	 (String[]) result.toArray(
	 	    new String[result.size()]);

ならOKでした。String[]の実体を作ってあげるわけです。toArray()の中ではarraycopy()してます。