日期:2014-05-20  浏览次数:20712 次

【不给力啊~】 关于JPanel数组的一个问题
我在写一个计算器时候写到下面一段代码
Java code

JPanel[] jp = new JPanel[6];
            for(int i =0; i< 6; i++){
                jp[i]= new JPanel();//没有这句就错
                jp[i].setLayout(new GridLayout(1,5,5,5));
                calPanel.add(jp[i]);
            }



注释的那句不写就会错误。
明明上面已经申请了一个含有6个JPanel的数组了,
为什么下面还要new 才能用?

double[] db = new double[20];
db不也可以直接用么?


------解决方案--------------------
new JPanel[6]只是建了个JPanel类型的数组,并没有初始化,后面肯定就报错了。
你注释掉的就是给数组的每个元素进行初始化操作。
double不一样,double是基本数据类型,默认初始为0,对象数组不会自动初始化的