gpt4 book ai didi

java - 将 boolean 值 True/False 与 JOptionPane.YES_NO_OPTION 一起使用

转载 作者:行者123 更新时间:2023-12-03 19:05:56 25 4
gpt4 key购买 nike

我在四个单独的对话框中有一系列四个是/否选择,其累积结果将导致十二个单独链接之一(例如,是/是/是/否 -> 链接 A,是/否/否/是 -> 链接 B,等等)。分支逻辑使用 boolean 值。

这是我目前所拥有的...只是第一个对话框并打印验证结果。

public class OutageGuideSelector{
public static void main(String[] args){
boolean contactServerUp;
boolean vistaUp;
boolean stormOutage;
boolean vistaCSUp;
//
int contactServerEntry = JOptionPane.showConfirmDialog(null,
"Is the contact server up", "Please select",
JOptionPane.YES_NO_OPTION);
System.out.println("result from entry " + contactServerEntry);
if(contactServerEntry==1)
contactServerUp = true;
else
if(contactServerEntry==0)
contactServerUp = false;
/* System.out.println(contactServerUp); */
}}

现在,单击"is"的结果返回 0,单击“否”的结果返回 1。这是否正常,似乎违反直觉,并且 docs.oracle.java 中没有任何内容显示输出值的清晰示例,除了 this。这似乎表明 public static final int YES_NO_OPTION 默认为 0。

此外,当我取消注释时,System.out.println(contactServerUp); 行返回一个错误,即字段 contactServerUp 可能尚未初始化 ,所以我看不到我的 convert-int-to-boolean 是否正常工作。

首先:似乎 JOptionPane 方法不包含任何 boolean 值返回...除了 getWantsInput() 返回 wantsInput 属性的值...所以我假设我已经是我可以用这个最有效。我想知道是否有更简单的方法。

其次,我缺少什么阻止我的控制台输出语句识别 contactServerUp?我错位的分号在哪里?

最佳答案

根据javadoc ,当 showXxxDialog 方法之一返回整数时,可能的值为:

  • YES_OPTION
  • NO_OPTION
  • CANCEL_OPTION
  • OK_OPTION
  • CLOSED_OPTION

您应该针对这些常量进行测试:

contactServerUp = (contactServerEntry == JOptionPane.YES_OPTION);

关于java - 将 boolean 值 True/False 与 JOptionPane.YES_NO_OPTION 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10176832/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com