哪个更有效/更传统?

时间:2012-12-01 01:34:41

标签: java performance user-interface components add

以下哪项是将Components添加到JPanel的更好方式?

panel.add(jlist);
panel.add(jcombobox);
panel.add(jmenu);

addComponents(new Component[] { jlist, jcombobox, jmenu }, panel);


    private static void addComponents(Component[] component, JPanel panel) {
         for (Component loop : component) {
              panel.add(loop);
         }
    }

1 个答案:

答案 0 :(得分:1)

第一个。为什么呢?

如果在某些时候您想将另一个参数传递给每个组件的panel.add(...)语句,该怎么办?如果你有一个循环,你就不能轻易做到这一点。

例如,使用MigLayout(但它也适用于其他情况):

panel.add(jlist, new CC().width("40%").span());

panel.add(jcombobox, new CC().width("60%"));

panel.add(jmenu, new CC().width("20%").span());

只有第一种方式允许这样做。