Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
  • ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:arraycopy コンパイルエラー)

Javaのarraycopyコンパイルエラー

このQ&Aのポイント
  • Javaの勉強中にarraycopy()を使ったプログラムでエラーが発生しました。
  • プログラムは、配列aの3番目の要素から5つの要素を配列bにコピーするものです。
  • エラーメッセージは、インデックスの範囲外へのアクセスが原因で発生しています。

質問者が選んだベストアンサー

  • ベストアンサー
noname#119918
noname#119918
回答No.2

修正コードとの差分です。 --- Ex97.java.old 2007-09-07 07:49:14.000000000 +0900 +++ Ex97.java 2007-09-07 07:49:40.000000000 +0900 @@ -9,11 +9,11 @@ System.arraycopy(a, 2, b, 0, 5); - for(int i=0; 0<a.length-1; i++){ + for(int i=0; i<a.length; i++){ System.out.println(a[i]); } System.out.println(""); - for(int i=0; 0<b.length; i++){ + for(int i=0; i<b.length; i++){ System.out.println(b[i]); } } forループの終了条件が間違っているのではないでしょうか。 当方でコンパイル、実行したところ、 上の修正により、問題なく実行できました。

noname#39315
質問者

お礼

ご覧頂きありがとうございます。 for文の終了条件がとんでもないことになっていました。 この程度のことも気づけず申し訳ありません。 ご回答ありがとうございました^^

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • Evreux
  • ベストアンサー率29% (225/774)
回答No.1

エラーメッセージの内容を見ると、エラーの箇所は Ex97 の中ではなく、Ex32 の13行目となっていますが?

noname#39315
質問者

補足

ややこしくて申し訳ありません。 この課題はEx97なのですが Ex32が不要になり、かつこのプログラムがEx97の問題内容と類似していたため Ex32を編集しプログラムをコンパイル→その後投稿する際 Ex97に書き換えたと言った感じです。

すると、全ての回答が全文表示されます。

関連するQ&A