本帖最后由 棉/mg花/x糖 于 2013-5-23 18:32 编辑
阅读下面程序,写出程序的运行结果
这段程序中,本人有一条语句不理解。
对于数组,都有一个自动下标越界检查,为什么这里bTbl[i+1]在i=3时,
下标明显越界,程序却还能顺利通过呢???
- package com.yb.Test;
- public class Test10 {
- /**
- * @param args
- */
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- boolean bTbl[][] = new boolean[4][];
- for(int i = 0; i < bTbl.length; i++) {
- bTbl[i] = new boolean[i+1]; //这条语句看不明白
- }
- for(int i = 0; i < bTbl.length; i++) {
- for (int j = 0; j < bTbl[i].length; j++) {
- System.out.print(bTbl[i][j]+" ");
- }
- System.out.println();
- }
- }
- }
复制代码 |