如何检查字符串数组是空的还是null的android?

han*_*f s 13 java android

我是java的新手.我无法检查是否为空.你能告诉我这件事吗?我有没有元素的字符串数组.

我试过这段代码

String[] k = new String[3];
if(k==null){
    System.out.println(k.length);
}
Run Code Online (Sandbox Code Playgroud)

Sub*_*der 40

非常准确

if(k!=null && k.length>0){
    System.out.println(k.length);
}else
    System.out.println("Array is not initialized or empty");
Run Code Online (Sandbox Code Playgroud)

k!=null会检查array不是null.并且StringArray#length>0return不为空[你也可以放弃该空格检查长度之前修剪.

一些相关的热门问题 -


Ron*_*hta 7

null数组和空数组之间存在关键区别.这是一个测试null.

int arr[] = null;
if (arr == null) {
  System.out.println("array is null");
}
Run Code Online (Sandbox Code Playgroud)

这里的"空"没有官方意义.我选择将empty定义为具有0个元素:

arr = new int[0];
if (arr.length == 0) {
  System.out.println("array is empty");
}
Run Code Online (Sandbox Code Playgroud)

"空"的另一种定义是,如果所有元素都是null:

Object arr[] = new Object[10];
boolean empty = true;
for (int i=0; i<arr.length; i++) {
  if (arr[i] != null) {
    empty = false;
    break;
  }
}
Run Code Online (Sandbox Code Playgroud)

要么

Object arr[] = new Object[10];
boolean empty = true;
for (Object ob : arr) {
  if (ob != null) {
    empty = false;
    break;
  }
}
Run Code Online (Sandbox Code Playgroud)

参考