Подтвердить что ты не робот

Предпочтительный способ получения выбранного элемента JComboBox

HI,

Каков правильный способ получить значение из JComboBox как String и почему он правильный. Спасибо.

String x = JComboBox.getSelectedItem().toString();

или

String x = (String)JComboBox.getSelectedItem();
4b9b3361

Ответ 1

Если в JComboBox есть только ссылки (не нулевые) String, то в любом случае это нормально.

Однако первое решение также позволит в будущем вносить изменения, в которые вы вставляете Integer s, Doubles s, LinkedList и т.д. как элементы в поле со списком.

Чтобы быть устойчивым к значениям null (все еще без кастинга), вы можете рассмотреть третий вариант:

String x = String.valueOf(JComboBox.getSelectedItem());

Ответ 2

Первый метод прав.

Второй метод убивает котят, если вы пытаетесь сделать что-либо с помощью x после факта, отличного от методов Object.

Ответ 3

Не бросайте, если вы не должны. Там nothign неправильно с вызовом toString().

Ответ 4

String x = JComboBox.getSelectedItem().toString();

преобразует любое значение погоды в Integer, Double, Long, Short into text с другой стороны,

String x = String.valueOf(JComboBox.getSelectedItem());

избежит нулевых значений и преобразует выбранный элемент из объекта в строку

Ответ 5

JComboBox mycombo=new JComboBox(); //Creates mycombo JComboBox.
add(mycombo); //Adds it to the jframe.

mycombo.addItem("Hello Nepal");  //Adds data to the JComboBox.

String s=String.valueOf(mycombo.getSelectedItem());  //Assigns "Hello Nepal" to s.

System.out.println(s);  //Prints "Hello Nepal".

Ответ 6

Обратите внимание, что это не является вопросом о JComboBox, а о любой коллекции, которая может включать в себя несколько типов объектов. То же самое можно сказать и для "Как получить строку из списка?" или "Как получить String из Object[]?"