我是Java的新手。不知道如何检查是否为空。你能帮我解决一下吗?我有一个字符串数组,里面没有任何元素。
我尝试了以下代码:
String[] k = new String[3];
if(k==null){
System.out.println(k.length);
}
非常精确
if(k!=null && k.length>0){
System.out.println(k.length);
}else
System.out.println("Array is not initialized or empty");
k!=null
会检查 array
不为 null
。而 StringArray#length>0
则表示不为空(你也可以在检查长度之前修剪去掉空格)。
一些相关的流行问题 -
一个null
数组和一个空数组之间有一个关键区别。这是用来测试null
的。
int arr[] = null;
if (arr == null) {
System.out.println("array is null");
}
这里的“空”没有官方含义。我选择将其定义为空元素为0:
arr = new int[0];
if (arr.length == 0) {
System.out.println("array is empty");
}
Object arr[] = new Object[10];
boolean empty = true;
for (int i=0; i<arr.length; i++) {
if (arr[i] != null) {
empty = false;
break;
}
}
或者
Object arr[] = new Object[10];
boolean empty = true;
for (Object ob : arr) {
if (ob != null) {
empty = false;
break;
}
}
if (myArray == null)
System.Console.WriteLine("array is not initialized");
else if (myArray.Length < 1)
System.Console.WriteLine("array is empty");
String k[] = new String[3];
if(k.length == 0 ){
System.out.println("Null");
}
if(str != null && !str.isEmpty())
更新
更好的解决方案是这个:
TextUtils.isEmpty(str)