0

1 つの JComboBox にさまざまな Enum を追加したいと考えています。コードは次のようになります。タイプには、3 つの異なるタイプの列挙型 (色、形状、寸法) が含まれます。

final JComboBox typeJComboBox = new JComboBox(Type.Colors.values());
for(Type.Shapes shape: Type.Shapes.values()) {
typeJComboBox .addItem(shape);
}
for(Type.Dimensions dimension : Type.Dimensions.values()) {
typeJComboBox .addItem(dimension );
}

どのジェネリック型を使用しますか? Eclipse を使用している場合、JComboBox の下に黄色の波線があり、マウスをその上に置くと、「ジェネリック型引数を推測...」と表示されます。

4

1 に答える 1

0

次のように実行できます。

public static <E extends Enum<?>> void main(String[] args)
{
    final JComboBox<E> typeJComboBox = new JComboBox(Type.Colors.values());
    for(Type.Shapes shape : Type.Shapes.values())
    {
        typeJComboBox.addItem((E) shape);
    }
    for(Type.Dimensions dimension : Type.Dimensions.values())
    {
        typeJComboBox.addItem((E) dimension);
    }
}
于 2013-08-17T21:52:11.167 に答える