判断对象是否为null或者空
public static boolean isEmpty(final Object obj) {
if (obj == null) {
return true;
}
//见以下各种判断
}
判断字符
if (obj instanceof CharSequence && obj.toString().length() == 0) {
return true;
}
判断数组
if (obj.getClass().isArray() && Array.getLength(obj) == 0) {
return true;
}
判断集合
if (obj instanceof Collection && ((Collection) obj).isEmpty()) {
return true;
}
判断map
if (obj instanceof Map && ((Map) obj).isEmpty()) {
return true;
}
判断SimpleArrayMap
if (obj instanceof SimpleArrayMap && ((SimpleArrayMap) obj).isEmpty()) {
return true;
}
判断SimpleArray
if (obj instanceof SparseArray && ((SparseArray) obj).size() == 0) {
return true;
}
判断SparseBooleanArray
if (obj instanceof SparseBooleanArray && ((SparseBooleanArray) obj).size() == 0) {
return true;
}
判断SparseIntArray
if (obj instanceof SparseIntArray && ((SparseIntArray) obj).size() == 0) {
return true;
}
判断SparseLongArray或者LongSparseArray
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) {
if (obj instanceof SparseLongArray && ((SparseLongArray) obj).size() == 0) {
return true;
}
}
if (obj instanceof LongSparseArray && ((LongSparseArray) obj).size() == 0) {
return true;
}
完整代码
public static boolean isEmpty(final Object obj) {
if (obj == null) {
return true;
}
if (obj instanceof CharSequence && obj.toString().length() == 0) {
return true;
}
if (obj.getClass().isArray() && Array.getLength(obj) == 0) {
return true;
}
if (obj instanceof Collection && ((Collection) obj).isEmpty()) {
return true;
}
if (obj instanceof Map && ((Map) obj).isEmpty()) {
return true;
}
if (obj instanceof SimpleArrayMap && ((SimpleArrayMap) obj).isEmpty()) {
return true;
}
if (obj instanceof SparseArray && ((SparseArray) obj).size() == 0) {
return true;
}
if (obj instanceof SparseBooleanArray && ((SparseBooleanArray) obj).size() == 0) {
return true;
}
if (obj instanceof SparseIntArray && ((SparseIntArray) obj).size() == 0) {
return true;
}
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) {
if (obj instanceof SparseLongArray && ((SparseLongArray) obj).size() == 0) {
return true;
}
}
if (obj instanceof LongSparseArray && ((LongSparseArray) obj).size() == 0) {
return true;
}
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
if (obj instanceof android.util.LongSparseArray
&& ((android.util.LongSparseArray) obj).size() == 0) {
return true;
}
}
return false;
}