- 406 名前:399 [03/03/04 03:57]
- また現れました。ご面倒ですがよろしくお願いします。
Javaの基本の問題ですが・・・・・ ようやくアプリも完成が近づき、ついにRecordStoreを実装しましたが レコードが余裕で10kバイトをオーバーしてしまいとても困りました。 そこで、getRecord(int recordId, byte[] buffer, int offset) などレコードに保存する方法はbyteの配列として保存されるために intをint→String→byte[]よりも整数をbyteとして扱ってbyte配列 を作れば保存領域は減るはずだと考えバイトの配列を作りました。 int a=1; byte reyear[]=new byte[40]; for(int i=0;i<40;i++) { reyear[i]=0; } reyear[1]=(byte)a; しかし、エミュは最後の文を実行時にjava/lang/ArrayIndexOutOfBoundsException とエラーを返します。 不正な添字を使って配列がアクセスされたことを示すためにスローされます。つまり、添字が負または、配列のサイズ以上の場合です。 と書いてありますがreyear[]はインスタンスまで指定しているのに なぜこのエラーが出るのか全く不思議です。 すみませんレベルの低い質問ですがよろしくお願いします。
|

|