Java 2选项选项的问题

Java 2选项选项的问题,java,swing,Java,Swing,我对这两个不同的选项有问题,第一个选项可以打开浏览器供将来使用,但是第二个选项打开浏览器,而不是我想要打开的对话框。还有人可以告诉我如何取消按钮取消,而不是打开浏览器,提前感谢这里的代码 public static void CheckForUpdates(){ Object[] possibleValues = { "Check for Updates", "Check for version ID" }; Object selectedValue = JOptionPane.show

我对这两个不同的选项有问题,第一个选项可以打开浏览器供将来使用,但是第二个选项打开浏览器,而不是我想要打开的对话框。还有人可以告诉我如何取消按钮取消,而不是打开浏览器,提前感谢这里的代码

    public static void CheckForUpdates(){
Object[] possibleValues = { "Check for Updates", "Check for version ID" };
Object selectedValue = JOptionPane.showInputDialog(null,
"What would you like to do?", "",
JOptionPane.INFORMATION_MESSAGE, null,
possibleValues, possibleValues[0]);
if ( JOptionPane.YES_NO_OPTION == JOptionPane.YES_OPTION) {
       try {
            Desktop.getDesktop().browse(new URI("www.google.ca"));
        } catch (IOException | URISyntaxException e) {
    }
    if ( JOptionPane.YES_NO_OPTION == JOptionPane.NO_OPTION){
        JOptionPane.showMessageDialog(frame, "version ID: V1");
    }
}
    }

比较常数是确定的,也就是说,在行为上没有任何变化

您需要检查
showInputDialog
的结果,它是一个
对象
值。当未选择任何内容(取消)时,该值为
null

if (selectedValue != null) { // anything selected?
    // Check for version ID?
    if (selectedValue.toString().equals(possibleValues[1])) {

        JOptionPane.showMessageDialog(null, "version ID: V1");
    } else {
        try {
            Desktop.getDesktop().browse(new URI("www.google.ca"));
        } catch (IOException | URISyntaxException e) {
        }
    }
}

旁白:Java命名约定表明,方法名称以小写字母开头,例如
checkForUpdates

比较常量是确定的,即,在行为上没有任何变化

您需要检查
showInputDialog
的结果,它是一个
对象
值。当未选择任何内容(取消)时,该值为
null

if (selectedValue != null) { // anything selected?
    // Check for version ID?
    if (selectedValue.toString().equals(possibleValues[1])) {

        JOptionPane.showMessageDialog(null, "version ID: V1");
    } else {
        try {
            Desktop.getDesktop().browse(new URI("www.google.ca"));
        } catch (IOException | URISyntaxException e) {
        }
    }
}
旁白:Java命名约定显示方法名以小写字母开头,例如
checkForUpdates