基本上我是一个 Java 初学者,我必须创建一个包含 JComboBox 的简单 GUI。该窗口应如下所示:http://i.imgur.com/Jg7j4XD.jpg
当我编译代码(如下所示)时,它确实编译了,但我在 jGRASP 中收到以下警告:
Note: Lab6.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
这是我的代码。我知道这意味着我必须指定涉及数据类型的内容(对吗?),但我认为我已经指定得足够多了。感谢任何可以提供帮助的人。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Lab6 extends JFrame
{
private String[] choices = {"Hello", "Good-Bye"};
public Lab6()
{
super("218 Lab 6");
setSize(450,200);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new BorderLayout());
JPanel panelNorth = new JPanel();
panelNorth.add(new JLabel("Welcome Class 218!"));
JComboBox comboBox = new JComboBox(choices);
panelNorth.add(comboBox);
add(panelNorth,BorderLayout.NORTH);
}
public static void main(String[] args)
{
new Lab6();
}
}
最佳答案
从 Java 7 开始,JComboBox需要泛型来描述它持有的数据:
JComboBox<String> comboBox = new JComboBox<>(choices);
不指定这些将产生所示的编译器警告。
关于JComboBox 的 Java 编译器 "Unchecked or unsafe operations"警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14418673/