ARRAY和JOptionPane的条件

时间:2013-11-12 12:22:50

标签: java arrays joptionpane

我希望我的程序显示我的数组是否等于零,大于零(POSITIVE)或小于零(NEGATIVE),如下所示:

array[0] contains 0
array[1] contains 1
array[2] contans -2

那么输出应该是......

0 ZERO
1 POSITIVE
-2 NEGATIVE
这样的事情。 这是我的代码:

        String display="";

        String size = JOptionPane.showInputDialog("Enter Your Prefered Size Of Your Array");
        int newsize = Integer.parseInt(size);

        JOptionPane.showMessageDialog(null,"You Entered "+newsize+".");

        String array[] = new String[newsize];

        for (int a=0; a<array.length;a++)
        {
            array[a]=JOptionPane.showInputDialog("Enter Value For Array["+a+"].");

        }



        for (int a=0;a<array.length;a++)
        {
            display=display+array[a]+"\n";

            if (array[a].compareTo(array[a])== 0)
            {
              String c = "ZERO";

            }
            else if (array[a].compareTo(array[a])< 0)
            {
                String c = "POSITIVE";

            }
            else if (array[a].compareTo(array[a])> 0)
            {
                String c = "NEGATIVE";

            }

            JOptionPane.showMessageDialog(null,"Arrays\n"+display);

具体问题是我不知道如何对此进行编码以显示ZERO,POSITIVE,NEGATIVE字符串及其相应的数组。

1 个答案:

答案 0 :(得分:1)

对你的第二个for循环进行一些更改,比如

    StringBuilder sb = new StringBuilder();
    sb.append("Arrays\n");

    int intValue = 0;
    for (String a :  array) {
        intValue = Integer.valueOf(a);
        sb.append(intValue).append(' ');
        if (intValue == 0) {
            sb.append("ZERO");

        } else if (intValue > 0) {
            sb.append("POSITIVE");

        } else if (intValue < 0) {
            sb.append("NEGATIVE");

        }
        sb.append('\n');

        JOptionPane.showMessageDialog(null, sb.toString());
    }

然后你会得到预期的结果:

enter image description here