2
import javax.swing.*;
public class MainP2 {
public MainP2() {
   JOptionPane.showMessageDialog(
          null,
          "Hi welcome to my square Pyramid calculator." + "\nPress Ok to begin.",
"CIS 2235", 
          JOptionPane.PLAIN_MESSAGE
   );
   String[] possibilities = {
           "adjust height", 
           "adjust baselength", 
           "adjust height and baselength", 
           "exit" 
   };
   String s = (String)JOptionPane.showInputDialog(
           null,
           "Choose one",
           "Customized Dialog",
           JOptionPane.PLAIN_MESSAGE,
           null,
           possibilities,
           possibilities[0]
   );
   //-----here's the problem with the code, am i calling it wrong?
   if(possibilities.equals(possibilities[0])){
           String myString = JOptionPane.showInputDialog(null,"Please enter height: ");
    }
}
public static void main (String[] args) {
    MainP2 app = new MainP2();
}
}

我正在构建一个平方金字塔计算器并从头开始编写所有代码,但我似乎遇到了我的第一个问题。我给用户一个欢迎信息,然后给他们一个下拉菜单,询问他们想要为金字塔“调整”什么。他们可以调整的四个选项是金字塔的height、和baselength,或者他们可以直接退出。现在从这里他们选择的任何选项(退出选项除外)都会弹出一个输入对话框,要求输入他们选择的新值/值。heightbaselength

我刚刚尝试了第一个选项,只是想看看它是否有效,但没有运气。每当我单击索引为 0 的调整高度时,程序就会结束并忽略我的 if 语句,即如果选项索引为 0,JOptionPane则应弹出一个输入对话框。

我究竟做错了什么?

4

2 回答 2

6

我想你的意思是:

if(s.equals(possibilities[0]))
于 2012-06-08T02:42:04.667 回答
3

替换以下内容:

if(possibilities.equals(possibilities[0])){

和:

if(s.equals(possibilities[0])){
于 2012-06-08T02:44:32.380 回答