我在我的GUI程序中定义了
JLabel[][] label = new JLabel[4][6];
但是后面我用到label[0][0].setsetText("1");
时就总是异常java.lang.NullPointerException
这个有什么问题么?
还有就是我用这条语句System.out.println(label.length);
的时候得到的输出值只有4,只有它的行值,为什么不是24呢?
我是一名初学者还望有知道的不吝赐教,不胜感激。
JLabel[][] label = new JLabel[4][6];
但是后面我用到label[0][0].setsetText("1");
时就总是异常java.lang.NullPointerException
这个有什么问题么?
还有就是我用这条语句System.out.println(label.length);
的时候得到的输出值只有4,只有它的行值,为什么不是24呢?
我是一名初学者还望有知道的不吝赐教,不胜感激。
解决方案 »
- 【求正解】100分求冒泡排序、快速排序、选择排序原理
- 新安装的jdk怎么编译不了
- ColumnSorter for JXTreeTable
- 引入applet的object标签 传的参数,当applet初始化时为什么参数都为null啊
- 判断 VOID 是否执行
- paintComponent为什么会自动执行
- 一直不是很明白,环境变量中的classpath和path有什么区别啊?
- 请教javax.swing.undo包的使用,代码、原理或相关资料下载地址
- String.replaceAll的问题
- 提问:JBuilder4中,JTable控件如何实现定时刷新?
- 我想实现如下功能,请问用java怎么实现?
- 一个关于监听JTextField内容的问题 小弟跪求解决了 谢谢
只是初始化一个所有项皆是null的2维数组。
JLabel[][] lableArray = new JLabel[4][6];
JLabel[] label = null;
for (int i = 0; i < lableArray.length; i++) {
label = lableArray[i];
for (int j = 0; j < label.length; j++) {
label[j] = new JLabel();
label[j].setText(String.valueOf(i + j));
System.out.println("[" + i + "][" + j + "] : textValue = " + label[j].getText());
}
}
}
import javax.swing.*;
class testJlabel{
public static void main(String []args){
JLabel [][]label=new JLabel[4][];//生成第一维数组引用句柄
for(int i=0;i<label.length;i++){
label[i]=new JLabel[6];//生成第二维数组引用句柄
}
for(int i=0;i<label.length;i++){
for( int j=0;j<label[i].length;j++){
label[i][j]=new JLabel();//生成JLable对象
}
}
label[0][0].setText("1");
System.out.println(label[0][0].getText());
}
}
要lable[i][j] = new ..... 后才行
正确 每一个要单独使用new创建
2。取得的是外层数组长度。label[0].length得到就是6了。
extends RuntimeException
当应用程序试图在需要对象的地方使用 null 时,抛出该异常。这种情况包括: 调用 null 对象的实例方法。
访问或修改 null 对象的字段。
将 null 作为一个数组,获得其长度。
将 null 作为一个数组,访问或修改其时间片。
将 null 作为 Throwable 值抛出。
应用程序应该抛出该类的实例,指示其他对 null 对象的非法使用。