一次声明multiplie swing元素

Jay*_*rel 2 java swing declare

我正在开发一个小型游戏,一个用于IT类的Java项目.

要添加/声明(???)Java swing元素我已经使用过这种写法:

JLabel A = new JLabel();
JLabel B = new JLabel();
//More JLabels...


JButton A = new JButton();
JButton B = new JButton();
//More JButtons...
Run Code Online (Sandbox Code Playgroud)

代码不会变得更长,而且(更多)令人困惑,我继续这种写作:

JLabel A = new JLabel(), B = new JLabel()/*More JLabels...*/;

JButton A = new JButton(), B = new JButton()/*More JButton...*/;

/*Generaly more comments everywhere over the code for my teacher (and me)
 *and more for a better overview.
 */
Run Code Online (Sandbox Code Playgroud)

我的问题是:

是否有更短的方法一次添加/声明(???)多个Java swing元素?

//like this
JLabel A, B, C, D, E, F = new JLabel();
//or
new JLabel[A, B, C, D, E, F];//PLS don't ask what I'm doing in this line xD
Run Code Online (Sandbox Code Playgroud)

或者在Stackoverflow中是否已经存在我未找到的半个问题?

编辑

这个问题可能已经有了答案:在Java 6答案中将多个变量初始化为相同的值

这里是问题的链接

您的问题已被确定为另一个问题的可能副本.如果那里的答案没有解决您的问题,请编辑以详细解释您的问题中唯一的部分.

不适用于Jbuttons和JLabels.

YCF*_*F_L 5

如果您使用的是Java 8,则可以使用:

List<String> labels = ....;
Stream<Button> stream = labels.stream().map(Button::new);
List<Button> buttons = stream.collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)

Java se 8这本书真的不耐烦了


然后你可以使用:

JPanel p = new JPanel();
buttons.forEach((t) -> p.add(t));//add your buttons to your panel
Run Code Online (Sandbox Code Playgroud)