4

如果我有类似的问题

someMethod(JOptionPane.showConfirmDialog(null, "Are you enrolled in a University?"));

我想将答案“是”或“否”传递给一个方法……该方法应该接受什么参数?我认为这将是布尔值(是的是真的,不是的是假的)但我想我错了,还有一点业余的想法。那么是和否的答案是否具有 int 值?

我希望我的问题是有道理的。

4

2 回答 2

9

JOptionPane.showConfirmDialog()返回一个int值,该值被解释为预定义的值,例如JOptionPane.YES_OPTIONJOptionPane.NO_OPTION。如果要直接使用结果,则必须使用以下方法:

void someMethod(int dialogResult)
于 2012-09-15T16:00:29.990 回答
8

它将返回一个int代表按下了哪个按钮。在没有方法调用的情况下运行代码,并查看按钮的顺序('Yes No Cancel' 或其他)。如果在该示例中单击“是”,它将返回 0,“否”将返回 1,而取消 2(关闭对话框返回 -1)。它只是返回从 0 开始的索引。

有关详细信息,请参阅JavaDoc

于 2012-09-15T15:56:59.397 回答