开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第1天。 快点击参加吧:juejin.cn/post/716729…
开发习惯(局部)
常用的判空方式(开发中几乎都会用到)
字符串判空
java工具包中的方式
添加依赖包
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.9</version>
</dependency>
// 判断参数是否不为空:isNotBlank
public static boolean isNotBlank(CharSequence cs){
return !isBlank(cs);
}
// 使用注意:会判断字符串是否不为空、长度是否不为0,值是否不包含空白字符。等价于!isBlank(String str)
StringUtils.isNotBlank(null) -> false
StringUtils.isNotBlank("") -> false
StringUtils.isNotBlank(" ") -> false
// 对于制表符、换行符、换页符和回车符StringUtils.isBlank()均识为空白符
StringUtils.isBlank("\t \n \f \r") -> true
// \b 为单词边界符
StringUtils.isNotBlank("\b") -> true
StringUtils.isNotBlank("bmw") -> true
StringUtils.isNotBlank(" bmw ") -> true
// isBlank:判断参数:是否为空,长度是否为0,值是否包含空白字符。
public static boolean isBlank(CharSequence cs) {
int strLen;
if (cs != null && (strLen = cs.length()) != 0) {
for(int i = 0; i < strLen; ++i) {
if (!Character.isWhitespace(cs.charAt(i))) {
return false;
}
}
return true;
} else {
return true;
}
}
举个栗子:
// null
StringUtils.isBlank(null) -> true
// ""
StringUtils.isBlank("") -> true
// " ":一个空格为空
StringUtils.isBlank(" ") -> true
// " " 再多的空格一样是空
StringUtils.isBlank(" ") -> true
集合判空
spring中提供的方式
// 包
package org.springframework.util;
// CollectionUtils抽象类中的方法:其实还是调用的是Collection中的isEmpty();该方法比Collection中的isEmpty()多了一个判空
public static boolean isEmpty(@Nullable Collection中的isEmpty<?> collection) {
return collection == null || collection.isEmpty();
}
对象判空
java工具包中的方式
对象的判空,实际上直接使用:对象名 == null 是可以的,依然可以实现;但是想要写出优雅的代码就要考虑到有些比较通用的,就可以从业务中抽离出来,一方面可以达到高可用,另一方面让代码看起来更加的优雅又不失风度。
java.util; 包中的一个工具类
Objects中就封装了对象判空的工具
// 如下
public static boolean isNull(Object obj) {
return obj == null;
}
文章很基础,新人报道,请多关照。以后有机会一定会写出更肝的文章。
从入坑到成功。。。。。
加油