本文主要是介绍关于三维数组变量重置为0的注意事项,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
今天下午在写代码时,用到了三维数组。i是自增的,当i=0时,一切正常,当i=1时,发现i=0数组下所有的值都为0,郁闷了2个小时,终于发现了问题。
因为每次我用for循环,都会new一个新的三维数组,i增加时,原来的三维数组被new了一下,原来的值就消失了
错误代码如何:
public int[][][] getQuarter2(String year){String startTime = year + "-4-1";String endTime = year + "-6-30";int[] orderId = this.getOrderId(startTime,endTime);int[][][] temp = new int[0][0][0]; //不同订单的商品信息数组for(int i=0; i<orderId.length; i++){int l = this.getGoodsInfo(orderId[i]).length;temp = new int[orderId.length][l][2];int[][] temp2 = this.getGoodsInfo(orderId[i]); //获得商品信息数组for(int j=0;j<l;j++){temp[i][j][0] = temp2[j][0];temp[i][j][1] = temp2[j][1];}}return temp;}
这篇关于关于三维数组变量重置为0的注意事项的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!