我最近开始在大学学习 Java。在我允许搜索的在线测试中,我对 JOptionPane 类中可用的方法 getValue 有疑问。这个方法返回一个String类的对象是真的吗?如果不是,为什么?这个方法返回什么样的对象?请回答我。谢谢你。
问问题
2501 次
1 回答
2
这取决于 JOptionPane 和放置在那里以供选择的值。如果程序让用户在几个喜欢之间进行选择(选择:“狗”、“猫”...),那么在调用该方法时Strings
您可以期待一个。String
getValue()
但要小心,实际上getValue()
唯一的返回对象来自class
Object
而不是a String
。 Object
是所有类的母亲,并且 aJOptionPane
可以容纳任何你想要的东西(字符串、整数、图像等 JOptionPanes ...),因此该方法getValue()
不能真正确定它返回的是哪种类。这就是为什么它返回一个class
Object
.
如果您确定 JOptionPane 包含 aString
那么您可以像这样使用它:
String myString = (String) myJOptionPane.getValue();
如果您不是 100% 确定,请先测试结果:
if( myJOptionPane.getValue() instanceOf String){
String myString = (String) myJOptionPane.getValue();
}
现在,如果您想知道为什么您的问题被否决:您可能想先用谷歌搜索这些问题。第一种查看方式是在这个Java Docs中。例如这里是JOptionPane.getValue()的描述。不要对看起来很复杂的文档感到困惑。他们将为您提供有关方法和类如何工作的所有信息的正确答案。
于 2013-04-05T14:06:59.743 回答