wake-up-neo.net

Bevorzugte Methode zum Abrufen des ausgewählten Elements einer JComboBox

HALLO,

Dies ist der richtige Weg, um den Wert einer JComboBox als String abzurufen, und warum ist dies der richtige Weg. Vielen Dank.

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

oder

String x = (String)JComboBox.getSelectedItem();
25
user489041

Wenn Sie nur (nicht-null) String-Referenzen in die JComboBox eingefügt haben, ist eine der beiden Möglichkeiten in Ordnung.

Die erste Lösung würde jedoch auch zukünftige Änderungen zulassen, bei denen Sie Integers, Doubless, LinkedLists usw. als Elemente in das Kombinationsfeld einfügen.

Um robust gegen null-Werte (noch ohne Casting) zu sein, können Sie eine dritte Option in Betracht ziehen:

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

Die erste Methode ist richtig.

Die zweite Methode tötet Kätzchen, wenn Sie versuchen, etwas mit x zu tun, nachdem die Tatsache anders als Object-Methoden ist.

5
James

Besetzung nicht, wenn Sie müssen. Es ist nichts falsch daran, toString () aufzurufen.

1
Mike Yockey
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".
0

Beachten Sie, dass dies im Kern keine Frage von JComboBox ist, sondern von einer Sammlung, die mehrere Objekttypen enthalten kann. Dasselbe könnte man für "Wie bekomme ich einen String aus einer Liste?" oder "Wie bekomme ich eine String aus einem Object[]?"

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

konvertiert jeden Wert, wenn er Integer, Double, Long, Short ist, in Text

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

vermeidet Nullwerte und konvertiert das ausgewählte Element vom Objekt in den String

0
androminor