用Java写一个判断空工具类
时间: 2023-03-15 12:00:38 浏览: 132
我可以为您提供一个简单的Java工具类,用于判断一个对象是否为空: public class EmptyCheckUtils { public static boolean isEmpty(Object obj) {
if (obj == null) return true;
if (obj instanceof String && ((String)obj).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;
return false;
}
}
相关问题
java 最全的判断空工具类
在Java中,我们可以使用很多方法来判断一个对象是否为空。以下是一些最常用且全面的判断空工具类:
1. 使用 == 运算符:判断一个对象是否为null。
例如:if (obj == null) { ... }
2. 使用 equals() 方法:判断一个对象是否与null相等。
例如:if (obj.equals(null)) { ... }
3. 使用对应的isEmpty()方法:判断字符串、集合、数组等是否为空。
例如: if (str.isEmpty()) { ... }
4. 使用Objects类的isNull()方法:在Java 7及更高版本中,可以使用Objects类的isNull()方法判断一个对象是否为null。
例如: if (Objects.isNull(obj)) { ... }
5. 使用StringUtils类的isBlank()方法:Apache Commons Lang库中的StringUtils类提供了isBlank()方法,可以判断一个字符串是否为空或空白字符。
例如: if (StringUtils.isBlank(str)) { ... }
6. 使用CollectionUtils类的isEmpty()方法:Apache Commons Collections库中的CollectionUtils类提供了isEmpty()方法,可以判断一个集合是否为空。
例如: if (CollectionUtils.isEmpty(list)) { ... }
7. 使用ArrayUtils类的isEmpty()方法:Apache Commons Lang库中的ArrayUtils类提供了isEmpty()方法,可以判断一个数组是否为空。
例如: if (ArrayUtils.isEmpty(array)) { ... }
需要注意的是,不同的判断空方法适用于不同的情况。根据具体的需求选择合适的方法进行判断,以确保代码正确并且高效。
用java写一个判断多种类型的参数是否为空的工具类
可以写一个 `ParamUtil` 工具类来判断多种类型的参数是否为空,具体实现如下:
```java
public class ParamUtil {
/**
* 判断字符串是否为空
*
* @param str 待判断的字符串
* @return 是否为空
*/
public static boolean isEmpty(String str) {
return str == null || str.trim().length() == 0;
}
/**
* 判断集合是否为空
*
* @param collection 待判断的集合
* @return 是否为空
*/
public static boolean isEmpty(Collection<?> collection) {
return collection == null || collection.isEmpty();
}
/**
* 判断数组是否为空
*
* @param array 待判断的数组
* @return 是否为空
*/
public static boolean isEmpty(Object[] array) {
return array == null || array.length == 0;
}
/**
* 判断Map是否为空
*
* @param map 待判断的Map
* @return 是否为空
*/
public static boolean isEmpty(Map<?, ?> map) {
return map == null || map.isEmpty();
}
/**
* 判断对象是否为空
*
* @param obj 待判断的对象
* @return 是否为空
*/
public static boolean isEmpty(Object obj) {
if (obj == null) {
return true;
}
if (obj instanceof String) {
return isEmpty((String) obj);
}
if (obj instanceof Collection) {
return isEmpty((Collection<?>) obj);
}
if (obj instanceof Object[]) {
return isEmpty((Object[]) obj);
}
if (obj instanceof Map) {
return isEmpty((Map<?, ?>) obj);
}
return false;
}
}
```
使用时可以直接调用 `ParamUtil.isEmpty()` 方法,例如:
```java
String str = null;
if (ParamUtil.isEmpty(str)) {
System.out.println("字符串为空");
}
List<String> list = new ArrayList<>();
if (ParamUtil.isEmpty(list)) {
System.out.println("集合为空");
}
String[] array = new String[0];
if (ParamUtil.isEmpty(array)) {
System.out.println("数组为空");
}
Map<String, Object> map = new HashMap<>();
if (ParamUtil.isEmpty(map)) {
System.out.println("Map为空");
}
Object obj = null;
if (ParamUtil.isEmpty(obj)) {
System.out.println("对象为空");
}
```
阅读全文