今天在thinking in java第四章的“数组初始化”这一节看到这么一句话:“编译器不允许指定数组的大小”
但我自己试了下,我可以指定数组的大小啊,那这句话怎么理解?

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【gesanri】截止到2008-08-01 20:23:54的历史汇总数据(不包括此帖):
    发帖的总数量:30                       发帖的总分数:915                      每贴平均分数:30                       
    回帖的总数量:104                      得分贴总数量:34                       回帖的得分率:32%                      
    结贴的总数量:29                       结贴的总分数:715                      
    无满意结贴数:5                        无满意结贴分:110                      
    未结的帖子数:1                        未结的总分数:200                      
    结贴的百分比:96.67 %               结分的百分比:78.14 %                  
    无满意结贴率:17.24 %               无满意结分率:15.38 %                  
    值得尊敬

    取消马甲机器人,请点这里:http://www.java2000.net/mycsdn/robotStop.jsp?usern=gesanri
      

  2.   

    意思可能是
    不可以在栈里面指定
    可以在堆里new出来我猜的
    不知道对不对
      

  3.   

    我估计是不允许声明的时候指定
    像这样
    int a[5];就是错误的。
    而c/c++里允许这样写。java都是直接写:
    int[] a;
    a=new int[5];
    这种形式。
      

  4.   

    我是这么理解的  就是当编译器编译一个数组变量的时候必须知道这个数组的length,而不能让编译器随意地初始化这个length。
    不知道我这么说  对不对...
      

  5.   

    想想数组与集合的差别:集合是可以动态改改大小的,而数组是不可以的。
    当你指定其大小是不能改变的!
    例如 Arrays 中的方法 public static <T> List<T> asList(T... a)
         注:返回一个受指定数组支持的固定大小的列表。(对返回列表的更改会“直接写”到数组。)
    这个方法充分体现了数组不能改变大小的问题你的Think in java 是第几版的?
      

  6.   


    int [] a//这样声明一个数组。