优化一下下面这段代码 if (ObjectUtils.isNotEmpty(metaDataBase)) { if (StringUtils.isNotBlank(metaDataBase.getName())) { tableDataInfo.setTableName(metaDataBase.getName() + "/" + metaDbTable.getName()); } else { MetaDataSource metaDataSource = metaDataSourcesMap != null ? metaDataSourcesMap.get(metaDataBase.getDataSourceId()) : null; if (metaDataSource != null) { tableDataInfo.setTableName(metaDataSource.getName() + "/" + metaDbTable.getName()); } } }
时间: 2024-02-14 21:13:38 浏览: 136
可以优化为以下代码:
```
if (ObjectUtils.isNotEmpty(metaDataBase)) {
String tableName = StringUtils.isNotBlank(metaDataBase.getName()) ?
metaDataBase.getName() :
metaDataSourcesMap != null ?
metaDataSourcesMap.get(metaDataBase.getDataSourceId()).getName() :
null;
if (StringUtils.isNotBlank(tableName)) {
tableDataInfo.setTableName(tableName + "/" + metaDbTable.getName());
}
}
```
主要优化点:
1. 将嵌套的 if 语句转换为条件表达式三目运算符,减少了代码行数。
2. 将重复的代码提取出来,避免了重复赋值。
相关问题
ObjectUtils.isNotEmpty
`ObjectUtils.isNotEmpty()` 是 Apache Commons Lang 库中的一个方法,用于判断一个对象是否非空并且不为 `null` 或者其长度(如数组或字符串)不为零。这个方法可以帮助你在处理对象时避免 `null` 检查,使代码更简洁。
这是一个简单的示例:
```java
import org.apache.commons.lang3.ObjectUtils;
public class Example {
public static void main(String[] args) {
String str = "";
boolean isNotEmpty = ObjectUtils.isNotEmpty(str); // 判断字符串是否非空
System.out.println(isNotEmpty); // 输出: false
Integer num = null;
isNotEmpty = ObjectUtils.isNotEmpty(num); // 判断整数是否非空
System.out.println(isNotEmpty); // 输出: false
String[] array = new String;
isNotEmpty = ObjectUtils.isNotEmpty(array); // 判断数组是否非空
System.out.println(isNotEmpty); // 输出: false
}
}
```
在这个例子中,`ObjectUtils.isNotEmpty(null)` 和 `ObjectUtils.isNotEmpty(new String)` 都会返回 `false`,因为它们都是空的。
objectutils.isnotempty()方法
ObjectUtils.isNotEmpty()方法是Apache Commons Lang库中的一个方法,用于检查对象是否不为空。如果对象不为空,则返回true,否则返回false。
例:
```
String str = "Hello";
if(ObjectUtils.isNotEmpty(str)) {
System.out.println("The string is not empty.");
} else {
System.out.println("The string is empty.");
}
```
输出:
```
The string is not empty.
```
如果str为null或空字符串,则输出将是“The string is empty”。
阅读全文