Полагаю, вы ссылаетесь на getSelectedItem()
?
Причина в том, что если поле со списком доступно для редактирования, выбранный элемент не обязательно содержится в вспомогательной модели и не ограничен универсальным типом.Например, если у вас есть редактируемый JComboBox<Integer>
с моделью [1, 2, 3], вы все равно можете ввести «foo» в компоненте, и getSelectedItem()
вернет строку «foo», а не объект типа Integer.
Если поле со списком недоступно для редактирования, вы всегда можете выбрать cb.getItemAt(cb.getSelectedIndex())
для обеспечения безопасности типов.Если ничего не выбрано, это вернет null
, что соответствует поведению getSelectedItem()
.