web-dev-qa-db-fra.com

Méthode préférée pour obtenir l’élément sélectionné d’une JComboBox

SALUT,

Quelle est la bonne façon d'obtenir la valeur d'un JComboBox en tant que chaîne et pourquoi est-ce la bonne façon Merci.

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

ou

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

Si vous n'avez placé que des références String (non nulles) dans JComboBox, l'un ou l'autre est correct.

Cependant, la première solution permettrait également de futures modifications dans lesquelles vous insérez Integers, Doubless, LinkedLists etc. comme éléments de la liste déroulante.

Pour être robuste contre les valeurs null (toujours sans conversion), vous pouvez envisager une troisième option:

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

La première méthode est correcte.

La deuxième méthode tue les chatons si vous essayez de faire quelque chose avec x après le fait autre que les méthodes Object.

5
James

Ne jetez pas sauf si vous devez. Il n'y a rien de mal à appeler toString ().

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
RamKrishna Thapa

Notez que ce n’est pas une question essentielle à propos de JComboBox, mais à propos de toute collection pouvant inclure plusieurs types d’objets. La même chose pourrait être dite pour "Comment puis-je extraire une chaîne d'une liste?" ou "Comment puis-je obtenir une String sur un Object[]?"

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

convertira toute valeur météo qu’il soit Entier, Double, Long, Court en texte d’autre part, 

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

évitera les valeurs nulles et convertira l'élément sélectionné de l'objet en chaîne

0
androminor