Почему компилятор даёт предупреждение?

Рейтинг: -1Ответов: 1Опубликовано: 08.02.2023

Я использую JComboBox в своей программе. У меня есть две строчки кода:

String[] items = {"public", "package private"};
JComboBox modificator = new JComboBox(items);

Но на одну из этих строк компилятор выдаёт предупреждение:

Note: .\helper\Asker.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

С чем это связано? Я вроде как не произвожу никаких "непроверенных или опасных операций". Но я точно уверен, что предупреждение именно об этих двух строчках.

Когда я создаю массив строк другим способом:

String [] items = new String[]{"public", "package private"}

то ничего не меняется.

Ответы

▲ 1Принят

Согласно документации, классJComboBox<E> является обобщённым (generic), а значит, вам следует указать тип объектов, которые используются в нём:

JComboBox<String> modificator = new JComboBox<>(items);