我知道这个问题以前曾被问过,但我找不到组合框问题的解决方案。我有以下代码:
...
JComboBox startingCombo = new JComboBox();
startingCombo.setModel(new DefaultComboBoxModel(new String[] {"USD", "EUR", "GBP"}));
...
从命令行运行时出现错误:
注意:ConverterFrame.java 使用未经检查或不安全的操作。 注意:使用 -Xlint 重新编译:未选中详细信息。
当我使用 -Xlink:Unchecked 重新编译时,我收到以下几个错误:
ConverterFrame.java:88:警告:[未选中]未选中对 DefaultComboBoxModel(E[]) 的调用作为原始类型 DefaultComboBoxModel 的成员
该行随后指向所提供代码中第二行的“new”。我知道我需要添加一个对象类型,但我不确定在哪里添加它以及如何添加。
最佳答案
JComboBox
和 DefaultComboBoxModel
都有一个用于其项目类型的通用类型参数。你想要字符串项目,因此写
JComboBox<String> startingCombo = new JComboBox<>();
startingCombo.setModel(new DefaultComboBoxModel<String>(new String[] {"USD", "EUR", "GBP"}));
关于Java 组合框的不安全操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36348941/