最近、私は少しのJavaコードで作業していました。Java ArrayIndexOutOfBoundsエラーが発生していない配列のエラー
public class Test {
static private int arraySize;
public Test(int arrayS){
arraySize = arrayS;
}
int []ma = new int[arraySize];
public static void main(String[] args){
}
public void increment(){
int count = arraySize - 1;
ma[count - 1] += 1;
while(count!= 0){
if(ma[count] > 9){
ma[count] =0;
ma[count - 1] +=1;
}
count -=1;
}
if(ma[0] > 9){
ma[0] = 0;
}
}
}
class Trial
{
public static void main(String[] args)
{
Test z = new Test(2);
System.out.println(z);
z.increment();
System.out.println(z);
}
}
このライン、特に:ma[count - 1] += 1;
トライアルトン何らかの理由でそれを構築しようとするたび範囲外いっている
は、ここに私のコードです。私はこのエラーを取得しておいてください。
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
私は本当に私はその配列が境界をオフに行くことになる理由として何らかの理由を見つけるように見えることはできませんので、あなたは余裕ができた任意の助けをいただければ幸いです。ありがとう。
ここにあなたのコードを投稿してください – Kaushal28
Theresたくさんのコードが間違っています...コード全体を入れてみてください。たとえば、あなたのTestコンストラクタが見つからないことを理解してください。 – Kushan
コンストラクタ内に配列を割り当てます。静的でサイズが初期化されているので、問題が起こっていると思います。これは、配列が0のサイズで初期化されることにつながります。 – Kushan