Java Android Studio-倒计时(如果循环)数组错误

Java Android Studio-倒计时(如果循环)数组错误,java,android,arrays,android-studio,Java,Android,Arrays,Android Studio,这段代码的目标是通过减少毫秒、秒、分钟和小时,在显示器上显示可运行的倒计时数字 我收到的错误是java.lang.ArrayIndexOutOfBoundsException:length=10;索引=-1 关于以下数组和runnable Integer[] RedLedDigit1 = { R.drawable.redled0, R.drawable.redled1, R.drawable.redled2, R.drawable.redle

这段代码的目标是通过减少毫秒、秒、分钟和小时,在显示器上显示可运行的倒计时数字

我收到的错误是java.lang.ArrayIndexOutOfBoundsException:length=10;索引=-1

关于以下数组和runnable

   Integer[] RedLedDigit1 = {
            R.drawable.redled0, R.drawable.redled1,
            R.drawable.redled2, R.drawable.redled3,
            R.drawable.redled4, R.drawable.redled5,
            R.drawable.redled6, R.drawable.redled7,
            R.drawable.redled8, R.drawable.redled9 

 private Runnable timeCountDown = new Runnable() {
            public void run() {
                --milliseconds;

                if (milliseconds <= 0) {
                    --seconds;
                    milliseconds = 90;
                }

                if (seconds <= 0) {
                    --minutes;
                    seconds = 59;
                }

                if (minutes <= 0) {
                    --hours;
                    minutes = 59;
                }
                d8 = hours / 10;
                d7 = hours % 10;

                d6 = minutes / 10;
                d5 = minutes % 10;

                d4 = seconds / 10;
                d3 = seconds % 10;

                d2 = milliseconds / 10;
                d1 = milliseconds % 10;



            RedLed1.setImageResource(RedLedDigit1[d8]);
            RedLed2.setImageResource(RedLedDigit1[d7]);
            RedLed3.setImageResource(RedLedDigit1[d6]);
            RedLed4.setImageResource(RedLedDigit1[d5]);
            RedLed5.setImageResource(RedLedDigit1[d4]);
            RedLed6.setImageResource(RedLedDigit1[d3]);
            RedLed7.setImageResource(RedLedDigit1[d2]);
            RedLed8.setImageResource(RedLedDigit1[d1]);
            handler.postDelayed(timeCountDown, 0);
        }
    };
Integer[]RedLedDigit1={
R.drawable.redled0,R.drawable.redled1,
R.drawable.redled2,R.drawable.redled3,
R.drawable.redled4,R.drawable.redled5,
R.drawable.redled6,R.drawable.redled7,
R.drawable.redled8,R.drawable.redled9
private Runnable timeCountDown=new Runnable(){
公开募捐{
--毫秒;

if(毫秒)错误表示您正在从数组的边界外引用数组。您的
.setImageResource
代码行引用的是不存在的数组索引。您可能减量过多,或者在减量之前没有正确设置if条件。您还缺少一个
}
在数组声明中,该错误表示您正在从数组边界之外引用数组。您的
.setImageResource
代码行引用的是不存在的数组索引。您可能减量过多,或者在减量之前没有正确设置if条件。您还缺少一个
}
在数组声明中