我在四个单独的对话框中有一系列四个是/否选项,其累积结果将导致十二个单独的链接之一(例如,是/是/是/否 -> 链接 A,是/否/否/是 -> 链接 B 等)。分支逻辑使用布尔值。
这是我到目前为止所拥有的......只是第一个对话框并打印结果以进行验证。
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); */
}}
现在,点击 YES 的结果0
是返回 a , NO 的结果是 a 1
。这是正常的吗,似乎违反直觉,并且在 docs.oracle.java 中没有任何内容显示输出值的清晰示例,除了这似乎表明public static final int YES_NO_OPTION
默认值为 0。
此外,当我取消注释时,该行System.out.println(contactServerUp);
返回该字段的错误contactServerUp might not have been initialized
,因此我看不到我的 convert-int-to-boolean 是否正常工作。
第一:看起来 JOptionPane 方法不包括任何布尔返回...除了getWantsInput()
返回 wantInput 属性的值...所以我假设我已经是最有效的了。我想知道是否有更简单的方法。
其次,我错过了什么阻止我的控制台输出语句识别contactServerUp
?我放错位置的分号在哪里?