我希望程序显示我的数组是等于零,大于零(正)还是小于零(负),如下所示:
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字符串及其对应的数组。
最佳答案
对您的第二个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());
}
然后您将获得预期的结果: