大家好,这是一项学校 Activity ,如果我的输入数组等于 0(零)、大于 0(零)和小于 0(零),我发现很难比较它。
这是我的代码...
字符串显示=“”;
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+"].");
}
//i'm having trouble here.........
for (int a=0;a<array.length;a++)
{
if (array[a].equals(array[0]))
{
}
else if (array[a] < (array[0]))
{
}
display=display+array[a]+"\n";
}
JOptionPane.showMessageDialog(null,"Arrays\n"+display);
请有人帮助我......
编辑:
在最后一部分我希望它显示数组是“零”,“正”,“负” (我真的不知道该怎么做)。
最佳答案
您不能使用条件运算符<
在字符串比较中。使用compareTo
方法。
array[a].compareTo(array[0])> 0 // greater
array[a].compareTo(array[0])< 0 // less
array[a].compareTo(array[0])== 0 // equals
更新
使用以下片段更新您的代码。
for (int a=0;a<array.length;a++)
{
if (array[a].compareTo(array[0])== 0)
{
//this is equals block
}
else if (array[a].compareTo(array[0])< 0)
{
//this is less than block.
}
display=display+array[a]+"\n";
}
关于java - 比较字符串数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19928369/