有一个object类对象可能是String类型可能是Long类型如何判断它不为空
时间: 2023-06-01 16:04:01 浏览: 103
可以使用if语句判断这个object对象是否为空,同时判断它的类型是否为String或Long类型,如果是,则判断它的值是否为空或0。示例代码如下:
```
if (obj != null && (obj instanceof String || obj instanceof Long)) {
if (obj instanceof String && !((String) obj).isEmpty()) {
// obj是String类型且不为空
// ...
} else if (obj instanceof Long && (Long) obj != 0) {
// obj是Long类型且不为0
// ...
} else {
// obj为空或0
// ...
}
} else {
// obj为空或不是String或Long类型
// ...
}
```
相关问题
有一个object类对象可能是String类型可能是Long类型如何判断它不为空,写一个java的通用方法
可以使用Java中的instanceof关键字来判断一个对象是否为String或Long类型,然后再判断是否为空。
下面是一个Java的通用方法示例:
```
public static boolean isNotNull(Object obj) {
if (obj == null) {
return false;
}
if (obj instanceof String) {
return !((String) obj).trim().isEmpty();
}
if (obj instanceof Long) {
return ((Long) obj) != 0;
}
return true;
}
```
这个方法接受一个Object类型的参数,首先判断是否为null,如果是则返回false。如果不是null,则通过instanceof关键字判断对象的类型,如果是String类型,则用trim()方法去除空格后再判断是否为空。如果是Long类型,则判断是否等于0。如果对象既不是String也不是Long类型,则默认认为不为空,返回true。
使用方法如下:
```
Object obj1 = null;
Object obj2 = "";
Object obj3 = " ";
Object obj4 = 0L;
Object obj5 = 123L;
System.out.println(isNotNull(obj1)); // false
System.out.println(isNotNull(obj2)); // false
System.out.println(isNotNull(obj3)); // false
System.out.println(isNotNull(obj4)); // false
System.out.println(isNotNull(obj5)); // true
```
有一个object类对象可能是String类型可能是Long类型可能是LocalDateTime如何判断它不为空,写一个java的通用方法
可以使用Java中的instanceof关键字来判断对象的类型,进而判断对象是否为空。
例如,以下是一个通用方法,可以判断任意类型的对象是否为空:
```
public static boolean isNotNull(Object obj) {
return obj != null && !(obj instanceof String && ((String) obj).trim().isEmpty())
&& !(obj instanceof Long && (Long) obj == 0)
&& !(obj instanceof LocalDateTime && obj.equals(LocalDateTime.MIN));
}
```
该方法首先判断对象是否为null,如果不为null,则根据对象的类型进一步判断是否为空。如果对象是String类型,则去除首尾空格后判断是否为空;如果对象是Long类型,则判断是否为0;如果对象是LocalDateTime类型,则判断是否等于LocalDateTime.MIN。
使用示例:
```
String str = "hello";
Long num = 0L;
LocalDateTime time = LocalDateTime.now();
Object obj1 = null;
Object obj2 = str;
Object obj3 = num;
Object obj4 = time;
System.out.println(isNotNull(obj1)); // false
System.out.println(isNotNull(obj2)); // true
System.out.println(isNotNull(obj3)); // false
System.out.println(isNotNull(obj4)); // true
```
阅读全文