获取JComboBox的选定项的首选方法

时间:2011-02-10 20:40:56

标签: java swing

HI,

将JComboBox中的值作为String获取的正确方法是什么,为什么它是正确的方法。感谢。

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

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

6 个答案:

答案 0 :(得分:38)

如果你只在JComboBox中放入(非空)String引用,那么两种方法都可以。

但是,第一个解决方案还允许将来修改,您可以在组合框中插入IntegerDoublesLinkedList等作为项目。

要对null值保持稳健(仍然没有强制转换),您可以考虑第三种选择:

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

答案 1 :(得分:5)

第一种方法是对的。

如果您在x方法以外的事实之后尝试对Object执行任何操作,则第二种方法会杀死小猫。

答案 2 :(得分:1)

除非必须,否则不要施放。调用toString()没有错。

答案 3 :(得分:0)

请注意,这不是关于JComboBox的问题,而是关于任何可以包含多种类型对象的集合。对于“如何从列表中获取字符串?”也可以这样说。或“如何从String中获得Object[]?”

答案 4 :(得分:0)

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

将任意值天气转换为整数,双,长,短文本 另一方面,

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

将避免空值,并将所选项目从对象转换为字符串

答案 5 :(得分: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".