只判断不为空和不为null且不为空的对比
时间: 2024-04-12 22:32:35 浏览: 18
在判断字符串非空时,有两种常见的方式:只判断不为空和同时判断不为null且不为空。它们之间的区别在于对于不同情况的处理方式。
1. 只判断不为空:这种方式只关注字符串是否为空,即长度是否为0。它适用于只需要确保字符串不是空字符串的情况。例如:
```java
if (!str.isEmpty()) {
// 执行非空操作
}
```
使用这种方式时,如果字符串为null,会导致空指针异常。因此,在使用之前需要确保字符串不为null。
2. 同时判断不为null且不为空:这种方式先判断字符串是否为null,再判断长度是否为0。它适用于需要确保字符串既不为null,也不为空的情况。例如:
```java
if (str != null && !str.isEmpty()) {
// 执行非空操作
}
```
使用这种方式时,首先检查字符串是否为null,如果为null,则条件判断会短路,不会执行后续的长度判断。这样可以避免空指针异常。
总结来说,只判断不为空的方式适用于只需确保字符串不为空字符串的场景,而同时判断不为null且不为空的方式适用于需要确保字符串既不为null,也不为空的场景。根据具体需求选择合适的方式即可。
相关问题
判断object不为空
判断object不为空的方法有多种。一种方法是手动判断,可以通过和null进行对比,或者使用instanceof判断对象的类型。如果是List类型,则可以通过判断list集合的长度来判断是否为空;如果是String类型,则可以通过和null对比,或者使用trim()方法判断是否为空字符串。
另一种方法是使用lang3库中的ObjectUtils和StringUtils工具类。通过ObjectUtils.toString方法将Object对象转换为String,并使用StringUtils.isNotBlank方法判断是否为空或空字符串。
还有一种方法是使用jQuery中的isEmptyObject()方法。该方法使用for in循环遍历对象的属性,如果对象为空,则返回true。
另外一种方法是使用for in循环遍历对象的属性,如果对象可遍历,则返回false,否则返回true。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [判断Object对象是否为空](https://blog.csdn.net/ximaiyao1984/article/details/117957953)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [判断一个对象为空对象的五种方法](https://blog.csdn.net/qq_57334853/article/details/125656802)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
对mdm_eleagl_query表进行sql查询,查询内容如下 1.DESC6字段不为空 2.判断DESC48字段是否有"SC+",如果有,对比“SC+”后面的编码是否与DESC4一致,保留一致的数据,如果没有,不做修改(且将该字段名修改为EXPR1)
可以使用如下SQL语句进行查询:
```
SELECT
CASE
WHEN DESC48 LIKE '%SC+%' AND SUBSTRING_INDEX(DESC48, 'SC+', -1) = DESC4 THEN DESC6
ELSE DESC48 AS EXPR1
END AS RESULT
FROM
mdm_eleagl_query
WHERE
DESC6 IS NOT NULL;
```
这个查询语句会返回一个名为RESULT的字段,其中包含了满足条件的DESC6或者修改后的DESC48(修改后的字段名为EXPR1)。同时,查询结果只包含DESC6字段不为空的记录。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)