2011-02-10 17 views

Respuesta

37

Si sólo has puesto (no nulo) String referencias en el JComboBox, a continuación, de cualquier manera está bien.

Sin embargo, la primera solución también podría permitir futuras modificaciones en las que se inserta Integer s, s, DoublesLinkedList s etc., como elementos en el cuadro combinado.

ser robusto contra null valores (aún sin casting) se puede considerar una tercera opción:

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

El primer método es el adecuado.

El segundo método mata a los gatitos si intenta hacer algo con x después del hecho que no sean los métodos Object.

+3

+1 ¡Y no queremos matar a los gatitos! –

+1

Bueno, el primer método mata gatitos en artículos nulos. Vea mi respuesta para la solución de ahorro de gatitos;) – aioobe

+5

@aioobe: ¿Por qué nos importan los gatitos 'null'? :) – James

1

No lances a menos que sea necesario. No hay nada malo en llamar a String().

0

Tenga en cuenta que esto no es en esencia una pregunta sobre JComboBox, sino sobre cualquier colección que puede incluir varios tipos de objetos. Lo mismo podría decirse de "¿Cómo obtengo una cadena de una lista?" o "¿Cómo obtengo un String de un Object[]?"

+1

y esta no es una respuesta, es un comentario. – camickr

+0

Tenga en cuenta que muchas personas no pueden hacer comentarios en este ridículo sistema: "necesitan X reputación". –

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

convertirá cualquier clima valor es Integer, Double, largo, corto en texto por el contrario,

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

evitará valores nulos, y convertir el elemento seleccionado de objeto para cuerdas

0
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

corrección: en la última línea de esta respuesta, "salir" es solo una vez. –

+0

Hola, Ram Krishna Thapa, bienvenido a [así]. Si desea corregir su respuesta, simplemente haga clic en el enlace "[editar]" debajo de la publicación. Gracias. – Pang

Cuestiones relacionadas