public static void toText(int[] sz) {//传输进来的是长度为4的一位数组 int gps = -1;//gps位置锁 int connect = 0; for (int cycle = 1; cycle <= 3; cycle++) { boolean gps_2 = true;//当前锁 for (i = cycle - 1; i >= 0; i--) {// cycle=2,i=1,j=1 boo = false; j = i + 1; if (sz[j] == 0) { break;//当前操作的数字为0,退出内循环 } else if (sz[i] == 0) { Move(sz[i], sz[j]); } else if (sz[i] == sz[j] && i > gps && gps_2 == true) { Add(sz[i], sz[j]); gps_2 = false; } else { break;// 当当前位置的数字,与他前面位置的数字不同时,退出内循环 } connect = i; } if (boo == true) {// 如果之前的数字有执行相加操作,那么boo的值将变为true gps = connect;// 锁定当前connect的值 } } }//这是我代码的一部分。//之前没有connect这个变量,i是全局变量,在没有设置connect之前,我最后一个if判断里面写的是:gps=i;那么问题来了,//为什么这里传下来i的值全为-1,导致gps的值也是-1,之后我加了connect,偶然间解决了问题,但是还是没搞明白为什么,求解
添加回答
举报
0/150
提交
取消