Java String数组:如何检查数组是否有值?

时间:2014-02-26 11:13:09

标签: java arrays string compare

我正在java中创建一个使用字符串数组的程序:

String[] category = new String[46];

然后我将检查for循环中的数组是否已有值

for(int checking = 21; checking <= 45 ;checking++) {
    if(category[checking]=INSERT_HERE) {
        textArea += category[checking] + "\n";
    }
}

我在INSERT_HERE中放了什么?注意:textArea是一个名为JTextArea

5 个答案:

答案 0 :(得分:1)

如果要检查该值是否为空,请使用

if(category[checking]!=null)

如果您正在检查某个特定值,那么

if(category[checking].equals(PARTICULAR_VALUE))

PS:'='用于作业,您应该使用'=='进行比较。

答案 1 :(得分:0)

for(int checking=21;checking<=45;checking++) {
    if(category[checking] != null || category[checking] != "") {
       textArea += category[checking] +"\n";
    }
}

答案 2 :(得分:0)

你必须检查是否使用这样的null:

 if(category[checking] != null) // will check all filled values only

答案 3 :(得分:0)

将阵列定义为

String[] category=new String[46];

在内存中为您的阵列分配46个参考插槽。这些广告位最初为null,因此当您需要进行比较时,您需要检查null

...
if(category[checking] != null)
...

答案 4 :(得分:0)

您可以在代码中尝试类似的内容:

for(int checking=21;checking<=45;checking++) {
    if(category[checking] != null) {
        textArea+=category[checking] +"\n";
    }
}

或者那样:

for(int checking=21;checking<=45;checking++) {
    if(category[checking] != "") {
        textArea+=category[checking] +"\n";
    }
}