ورود

View Full Version : ArrayIndexOutOfBoundsException



fatemehmahdieh
جمعه 20 اردیبهشت 1392, 20:34 عصر
سلام من برنامه ای نوشتم که برای این که سایز آرایه هاش از محدوده ی مورد نظر خارج نشه یه سری شرط گذاشتم اما باز برنامه ی من خطای زیر میده
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1

برنامه
for(int i=0;i<x ;i++){

for(int j=0;j<y;j++){
if(i==0){
if(j==0)
b2[i][j].addActionListener(new MyActionListener2(i,j,C,D,x,y,b2[i][j],b2[i+1][j],b2[i][j+1],x1,r));
if(j==y-1){
System.out.println("io");
b2[i][j].addActionListener(new MyActionListener2(i,j,C,D,x,y,b2[i][j],b2[i+1][j],b2[i][j-1],x1,o));}
else{
System.out.println("op");
b2[i][j].addActionListener(new MyActionListener2(i,j,C,D,x,y,b2[i][j],b2[i+1][j],b2[i][j+1],b2[i][j-1],x1,r));
}}
}}
پارامتر های دیگر سازنده مورد نظر مهم نیستن سوال من بیشتر مربوط به دگمه هایی اس که به صورت آرایه اند
وخطای مورد نظر در قسمت else است :متفکر:

Behnam.B
یک شنبه 22 اردیبهشت 1392, 14:26 عصر
سلام. اشکال زمانی پیش میاد که i=0 و j=0 در این صورت در else مقدار [b2[i][j-1 غیر معتبره... این مشکل با نوشتن else پشت (if( j == y-1 درست میشه.