java编译中的未检查或不安全操作错误?

java编译中的未检查或不安全操作错误?,java,Java,我正在完成学校的一项实验作业,在编译时出现了这个错误。程序运行正常,bit希望修复导致错误的原因。下面是程序代码和完整错误。一如既往地谢谢你 错误: 注意:F:\Java\Lab 8\Lab8.Java使用未经检查或不安全的操作。 注意:使用-Xlint重新编译:未选中以获取详细信息 代码: 为JComboBox和JList添加通用参数 PS:使用带有语法突出显示的IDE。例如,拥有免费的社区版 这意味着Java编译器注意到您的代码中存在一些潜在的不安全问题,并警告您。这些问题通常都很琐碎,你可

我正在完成学校的一项实验作业,在编译时出现了这个错误。程序运行正常,bit希望修复导致错误的原因。下面是程序代码和完整错误。一如既往地谢谢你

错误: 注意:F:\Java\Lab 8\Lab8.Java使用未经检查或不安全的操作。 注意:使用-Xlint重新编译:未选中以获取详细信息

代码:

为JComboBox和JList添加通用参数


PS:使用带有语法突出显示的IDE。例如,拥有免费的社区版

这意味着Java编译器注意到您的代码中存在一些潜在的不安全问题,并警告您。这些问题通常都很琐碎,你可以继续处理;尤其是因为这是学校的工作。但是要找到问题,您应该像编译器所说的那样使用:
javac-Xlint:unchecked Lab8.java
再次编译

该文件中的问题是,您没有指定JComboBox和JList正在处理的对象的类型。因为您只处理JComboBox和JList中的字符串,所以应该指定它。阅读和了解更多信息

改变

String[] ageRanges = {"Under 20", "20-29", "30-39", "40-49", "50-59", "60 and Above"};
JComboBox jcbo = new JComboBox(ageRanges);

只需将此添加到任何导致不安全操作的方法之上。例如,我认为您可以在代码中将其置于主方法之上,如下所示:

@SuppressWarnings("unchecked") 
public static void main(String[] args) {
...

这将抑制警告。

您是否尝试按照编译器的说明进行操作?“使用-Xlint重新编译:未选中以获取详细信息”。如果您对进一步改进感兴趣,您可以创建每周天数的枚举,将所有JRadioButton放在数组中,并使用枚举索引访问该数组中的值。您太棒了!谢谢你的帮助!
String[] ageRanges = {"Under 20", "20-29", "30-39", "40-49", "50-59", "60 and Above"};
JComboBox<String> jcbo = new JComboBox<String>(ageRanges);
p2.add(new JComboBox(ageRanges), BorderLayout.CENTER);
p2.setBorder(new TitledBorder("Passenger Name & Age Range"));
p2.add(new JComboBox<String>(ageRanges), BorderLayout.CENTER);
p2.setBorder(new TitledBorder("Passenger Name & Age Range"));
//Create listbox panel.
JPanel p3 = new JPanel();
p3.setLayout(new GridLayout(1, 0));
p3.add(new JList(destination));
//Create listbox panel.
JPanel p3 = new JPanel();
p3.setLayout(new GridLayout(1, 0));
p3.add(new JList<String>(destination));
@SuppressWarnings("unchecked") 
@SuppressWarnings("unchecked") 
public static void main(String[] args) {
...