JComboBox 的 Java 编译器 "Unchecked or unsafe operations"警告

标签 java user-interface

基本上我是一个 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/

相关文章:

java - 如何向我已有的时间戳添加分钟?

java - LinearLayout提供的onMeasure()参数

java - 无法使用 netbeans GUI 生成器调用 UI 类

java - 从文本区域生成可点击事件

java - 除了 Collections API 之外,在 Java 中覆盖 hashCode 有什么用?

java - Eclipse 插件开发问题

java - 线程转储解释

java - 重新排序滚动 Pane 中的面板

Python Tkinter。数据点的最佳拟合椭圆

java - 性能方面,Python VS JAVA 基于文件的处理