-2

我最近开始在大学学习 Java。在我允许搜索的在线测试中,我对 JOptionPane 类中可用的方法 getValue 有疑问。这个方法返回一个String类的对象是真的吗?如果不是,为什么?这个方法返回什么样的对象?请回答我。谢谢你。

4

1 回答 1

2

这取决于 JOptionPane 和放置在那里以供选择的值。如果程序让用户在几个喜欢之间进行选择(选择:“狗”、“猫”...),那么在调用该方法时Strings您可以期待一个。StringgetValue()

要小心,实际上getValue()唯一的返回对象来自class Object不是a StringObject所有类的母亲,并且 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 回答