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();
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 Integer
s, Doubles
s, LinkedList
s 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());
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
.
Ne jetez pas sauf si vous devez. Il n'y a rien de mal à appeler toString ().
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".
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[]
?"
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