布尔数组赋值 问题或许涉及到储存问题

令布尔数组的其中一个值为true,结果那一列在那个值之前的数组全变为true,有人知道怎么回事?部分代码如下:if(y*30>=600||t) {
for(int i=0;i<4;i++) {//让小方块上一位在大方块中
y=gety(i)+3;
x=getx(i);
for(int j=4;j<25;j++) {
for(int k=0;k<10;k++) {
if(modal.mainbox.box[j][k]==true) {
System.out.println("1"+j+":"+k);
}
}
}
System.out.println();
modal.mainbox.box[y][x]=true;
modal.mainbox.shapecolor[y][x]=modal.smallbox.color;
for(int j=0;j<25;j++) {
for(int k=0;k<10;k++) {
if(modal.mainbox.box[j][k]==true) {
System.out.println(j+":"+k);
}
}
}
}
其中四个循环之一的部分结果如下:
122:8
122:9
123:8
123:9

0:8
1:8
2:8
3:8
4:8
5:8
6:8
7:8
8:8
9:8
10:8
11:8
12:8
13:8
14:8
15:8
16:8
17:8
18:8
19:8
20:8
22:8
22:9
23:8
23:9
14:8
15:8
16:8
17:8
18:8
19:8
110:8
111:8
112:8
113:8
114:8
115:8
116:8
117:8
118:8
119:8
120:8
122:8
122:9
123:8
123:9