gpt4 book ai didi

Java 填充组合框

转载 作者:行者123 更新时间:2023-12-01 09:06:34 25 4
gpt4 key购买 nike

我想用 Java 填充 ComboBox,但是:

  • 当我使用字符串数组时,我必须先定义数组的大小(这是缺点),
  • 当我想使用 ArrayList 时,我不能有空值的空项目,或者我不能跳过 ids:
        ArrayList<String> a = new ArrayList<String>();
a.add(0, "hahah");
a.add(1, "bleeeee");
a.add(5, "cleeeee"); //this makes an error, when I change index to 2, it works

JComboBox supplierComboBox = new JComboBox(a.toArray());

我的数组例如是:

[1] => "dog",
[5] => "mouse",
[8] => "cat".
(some ids missing).

谢谢。

最佳答案

如果没有索引 2、3 和 4,就不可能有索引 5。 Java 要么会抛出异常,要么会默默地用 null 值填充所有跳过的索引。因此,只需在 2、3 和 4 处添加值即可。确保没有其他跳过的索引。

要删除列表中的所有空值,请尝试以下代码:

public class RemoveNullValues {
private ArrayList<String> test = new ArrayList<String>();

public RemoveNullValues() {
test.add("0");
test.add(null);
test.add("1");
test.add(null);
test.add(null);
test.add("2");
test.add("3");
test.add("4");
test.add(null);
test.add("5");

System.out.println("Before: " + test);

//Java 7 and below method:
test.removeAll(Collections.singleton(null));

//Java 8+ method:
test.removeIf(Objects::isNull);

System.out.println("After: " + test);
}

public static void main(String[] args) {
new RemoveNullValues();
}
}

关于Java 填充组合框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41222308/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com