帮我简化这段代码JPanel panelProduct = new JPanel(); panelProduct.setBackground(Color.lightGray); panelProduct.add(labelCode); panelProduct.add(textFieldCode); panelProduct.setBackground(Color.lightGray); panelProduct.add(labelDescription); panelProduct.add(textFieldDescription); panelProduct.setBackground(Color.lightGray); panelProduct.add(labelPrice); panelProduct.add(textFieldPrice); panelProduct.setBackground(Color.lightGray); panelProduct.add(labelOrigin); panelProduct.add(textFieldOrigin); panelProduct.setBackground(Color.lightGray); panelProduct.add(labelRoast); panelProduct.add(textFieldRoast); panelProduct.setBackground(Color.lightGray); panelProduct.add(labelFlavor); panelProduct.add(textFieldFlavor); panelProduct.setBackground(Color.lightGray); panelProduct.add(labelAroma); panelProduct.add(textFieldAroma); panelProduct.setBackground(Color.lightGray); panelProduct.add(labelAcidity); panelProduct.add(textFieldAcidity); panelProduct.setBackground(Color.lightGray); panelProduct.add(labelBody); panelProduct.add(textFieldBody); panelProduct.setLayout(new GridLayout(9, 1));
时间: 2024-03-03 13:49:56 浏览: 46
简化代码-Lombok
可以将代码简化为以下形式:
```
JPanel panelProduct = new JPanel(new GridLayout(9, 1));
panelProduct.setBackground(Color.lightGray);
JLabel[] labels = {labelCode, labelDescription, labelPrice, labelOrigin, labelRoast, labelFlavor, labelAroma, labelAcidity, labelBody};
JTextField[] textFields = {textFieldCode, textFieldDescription, textFieldPrice, textFieldOrigin, textFieldRoast, textFieldFlavor, textFieldAroma, textFieldAcidity, textFieldBody};
for (int i = 0; i < labels.length; i++) {
JPanel panel = new JPanel(new FlowLayout(FlowLayout.LEFT));
panel.setBackground(Color.lightGray);
panel.add(labels[i]);
panel.add(textFields[i]);
panelProduct.add(panel);
}
```
这样可以避免重复的代码和过多的 `setBackground` 调用。同时,使用循环可以更好地管理多个标签和文本框的添加和布局。
阅读全文