java中的StringUtil.isEmpty和StringUtil.isBlank

本文介绍了Spring框架中用于验证字符串是否为空或仅包含空白字符的方法StringUtil.isEmpty()与StringUtil.isBlank()。详细解释了这两种方法的区别及应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在学习spring中注意到其判断配置文件位置的字符串是使用了StringUtil.isEmpty()方法。第一次遇到这种使用方式,感到很新奇。

StringUtil.isEmpty()方法的作用是:判断字符串是否为空即是否为null值或者其长度是否为零。

StringUtil.isBlank()方法的作用是:判断字符串是否为空或者是否有空白符组成。其中空白符包括有\t(制表符),\n(换行符),\f(换页符),\r(回车符),空格等。

versionDatas.stream() .filter(item -> CollectionUtils.isEmpty(param.getIds()) || param.getIds().contains(item.getId())) .filter( item -> StringUtils.isBlank(param.getName()) || StringUtil.iContains(item.getName(), param.getName())) .filter(item -> StringUtils.isBlank(param.getDescription()) || StringUtil.iContains(item.getDescription(), param.getDescription())) .filter( item -> StringUtil.isEmptyStringList(param.getLabels()) || StringUtil.listFuzzyMatch(item.getLabels(), param.getLabels())) .filter(item -> StringUtils.isBlank(param.getDataType()) || StringUtil.iContains(item.getDataType(), param.getDataType())) .filter(item -> StringUtils.isBlank(param.getModel()) || StringUtil.iContains(item.getModel(), param.getModel())) .filter(item -> StringUtil.isEmptyStringList(param.getStatus()) || StringUtil.listMatch(item.getStatus(), param.getStatus())) .filter(item -> StringUtil.isEmptyStringList(param.getSource()) || StringUtil.listMatch(item.getSource(), param.getSource())) .filter(item -> StringUtil.isEmptyStringList(param.getDataSecurityLevel()) || StringUtil.listMatch( item.getDataSecurityLevel(), param.getDataSecurityLevel())) .filter(item -> CollectionUtils.isEmpty(param.getOriginCorpusId()) || StringUtil.listFuzzyMatch( item.getOriginCorpusId(), param.getOriginCorpusId().stream().map(String::valueOf).collect(Collectors.toList()))) .filter( item -> param.getCorpusSourceId() == null || item.getCorpusSourceId().equals(param.getCorpusSourceId())) .filter(item -> StringUtils.isBlank(param.getSourceSubtype()) || item.getSourceSubtype() .equals(param.getSourceSubtype())) .filter(item -> StringUtils.isBlank(param.getWebsiteName()) || StringUtil.iContains(item.getWebsiteName(), param.getWebsiteName())) .filter( item -> StringUtils.isBlank(param.getWebsiteAddress()) || StringUtil.iContains(item.getWebsiteAddress(), param.getWebsiteAddress())) .filter(item -> StringUtils.isBlank(param.getSourceTag()) || StringUtil.iContains(item.getSourceTag(), param.getSourceTag())) .filter(item -> StringUtils.isBlank(param.getAigcInput()) || StringUtil.iContains(item.getAigcInput(), param.getAigcInput())) .filter(item -> StringUtils.isBlank(param.getCapabilityLabel()) || StringUtil.iContains( item.getCapabilityLabel(), param.getCapabilityLabel())) .collect(Collectors.toMap(VersionDataManagement::generateKeyByDirIdAndName, item -> item));把这个stream流中过滤方法提取成几个通用的方法,减少重复逻辑的代码
最新发布
07-24
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值