【发布时间】:2014-10-11 18:50:05
【问题描述】:
我想为我的项目添加许多文本字段并决定只使用数组,因为所有这 22 个文本字段都具有相同的属性。
我试过JTextField txtFld[] = new JTextField[5];。它没有参数错误,但是当我尝试运行我的程序时,它会显示在控制台中
Exception in thread "main" java.lang.NullPointerException
我不想用
JTextField txtFld[] = new JTextField[]{
new JTextField(10),
...
...
... // repeat the same code about 20 times
};
因为它占用了这么多行,而且文本字段无论如何都是相同的类型。我想做的只是一个长度相同的文本字段数组,只需使用mainPanel(txtFld[0]); ... mainPanel(txtFld[21]);
是否可以在一行代码中创建一个文本字段数组?
【问题讨论】:
-
你考虑过使用循环吗?
new JTextField[5]所做的只是创建一个包含 空间 5 个文本字段的数组。但实际上并没有用任何JTextField对象填充它。使用new关键字创建对象。所以如果你不想要 20 行代码,你可以通过循环将它缩短到 3 行。 -
也许复习一下How to use Arrays 和How to Use for Loops 会有所帮助
标签: java arrays swing nullpointerexception jtextfield