当前位置: 首页 > 科技观察

isEmpty和isBlank的用法区别,起码有一半人答不上来,,

时间:2023-03-12 10:41:25 科技观察

isEmpty系列StringUtils.isEmpty()为空。可以看到""空格会绕过这个空判断,因为它是一个空格,不是严格意义上的空,会导致isEmpty("")=falseStringUtils.isEmpty(null)=trueStringUtils.isEmpty("")=trueStringUtils.isEmpty("")=falseStringUtils.isEmpty("bob")=falseStringUtils。isEmpty("bob")=false/****

注意:此方法在Lang2.0版中发生了变化。*它不再修剪CharSequence。*该功能在isBlank()中可用。

**@paramcs要检查的CharSequence,可能为null*@return{@codetrue}如果CharSequence为空或null*@since3.0将签名从isEmpty(String)更改为isEmpty(CharSequence)*/publicstaticbooleanisEmpty(final)CharSequencecs){返回cs==null||cs.length()==0;}StringUtils.isNotEmpty()相当于不为空,=!isEmpty()。publicstaticbooleanisNotEmpty(finalCharSequencecs){return!isEmpty(cs);}StringUtils.isAnyEmpty()是否一个为空,只有一个为空,为trueStringUtils.isAnyEmpty(null)=trueStringUtils.isAnyEmpty(null,"foo")=trueStringUtils.isAnyEmpty("","bar")=trueStringUtils。isAnyEmpty("bob","")=trueStringUtils.isAnyEmpty("bob",null)=trueStringUtils.isAnyEmpty("","bar")=falseStringUtils.isAnyEmpty("foo","bar")=false/***@paramcss要检查的CharSequences,可以为null或空*@return{@codetrue}如果任何CharSequences为空或null*}for(finalCharSequencecs:css){if(isEmpty(cs)){返回真;}}returnfalse;}StringUtils.isNoneEmpty()等同于!isAnyEmpty(css),仅当所有CharSequences都不为空("")或null时才返回true/***。

**
*StringUtils.isNoneEmpty(null)=false*StringUtils.isNoneEmpty(null,"foo")=false*StringUtils.isNoneEmpty("","bar")=false*StringUtils.isNoneEmpty("bob","")=false*StringUtils.isNoneEmpty("bob",null)=false*StringUtils.isNoneEmpty("","bar")=true*StringUtils.isNoneEmpty("foo","bar")=true*
**@paramcssCharSequences到检查,可能为空或空*@return{@codetrue}如果所有CharSequences都不为空或为空*@since3.2*/publicstaticbooleanisNoneEmpty(finalCharSequence...css){isBank系列StringUtils.isBlank()是否为真空值(空格或空值)StringUtils.isBlank(null)=trueStringUtils.isBlank("")=trueStringUtils.isBlank("")=trueStringUtils.isBlank("bob")=falseStringUtils.isBlank("bob")=false/***

检查CharSequence是否为空白、空("")或null。

*@paramcs要检查的CharSequence,可能为null*@return{@codetrue}如果CharSequence为null、空或空白*@since2.0*@since3.0将签名从isBlank(String)更改为isBlank(CharSequence)*/publicstaticbooleanisBlank(finalCharSequencecs){intstrLen;如果(cs==null||(strLen=cs.length())==0){returntrue;}for(inti=0;i检查是否有任何一个CharSequences为空("")ornullandnotwhitespaceonly..

*@paramcss要检查的CharSequences,可以是null或空*@return{@codetrue}如果任何CharSequences是空白或null或只有空格*@自3.2*/publicstaticbooleanisAnyBlank(finalCharSequence...css){if(ArrayUtils.isEmpty(css)){returntrue;}for(finalCharSequencecs:css){if(isBlank(cs)){returntrue;}}returnfalse;}StringUtils.isNoneBlank()是不是全部都不包含空间值或空间格式StringUtils.isNoneBlank(null)=falseStringUtils.isNoneBlank(null,"foo")=falseStringUtils.isNoneBlank(null,null)=falseStringUtils.isNoneBlank("","bar")=falseStringUtils.isNoneBlank("bob","")=falseStringUtils.isNoneBlank("bob",null)=falseStringUtils.isNoneBlank("","bar")=falseStringUtils.isNoneBlank("foo","bar")=true/***

检查是否没有CharSequences为空白("")或null和仅空格..

*@paramcss要检查的CharSequences,可以为null或空*@return{@codetrue}如果没有CharSequences为空白或null或者仅限空白*@since3.2*/publicstaticbooleanisNoneBlank(finalCharSequence...css){return!isAnyBlank(css);}StringUtils的其他方法。可以参考官方文档,里面有详细的说明,有些方法还是很有用的。https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html方法名称英文说明中文说明IsEmpty/IsBlank检查字符串是否包含文本检查字符串是否包含textTrim/Stripremovesleadingandtrailingwhitespace删除前导和尾随空格Equals/Compare比较两个字符串null-safe比较两个字符串的null-safestartsWithcheck如果字符串以前缀null-safe检查字符串是否以前缀null-开头safeendsWithcheck如果字符串以后缀结尾null-safe检查字符串是否以后缀结尾null-safeIndexOf/LastIndexOf/Containsnull-safeindex-of检查IndexOfAny/LastIndexOfAny/IndexOfAnyBut/LastIndexOfAnyButindex-一组字符串中的任何一个任何一组字符串的索引ContainsOnly/ContainsNone/ContainsAnydoes字符串仅包含/无/这些字符中的任何一个字符串是否仅包含/无/这些字符中的任何一个子字符串/左/右/中空安全子字符串extractionsStringsafeExtractSubstringBefore/SubstringAfter/SubstringBetween相对于其他字符串的子字符串提取-Split/Joinsplits一个String到一个子字符串数组,反之亦然Split/Joinsplits一个String到一个子字符串数组,反之亦然ThenRemove/DeleteremovespartofaString-删除字符串的一部分Replace/OverlaySearchesaString并用另一个搜索字符串替换一个String,然后用另一个字符串替换它Chomp/ChopremovesthelastpartofaStringdeletesthelastpartofaStringAppendIfMissing的一部分如果不存在则将后缀添加到字符串的末尾PrependIfMissing如果不存在则将前缀添加到字符串的开头PrependIfMissing如果不存在则将前缀添加到字符串的开头添加前缀LeftPad/RightPad/Center/RepeatpadsaString填充字符串UpperCase/LowerCase/SwapCase/Capitalize/UncapitalizechangesthecaseofaStringChangesthecaseofaStringCountMatchescountscountstheoccurrencesofaStringinanotherIsAlpha/IsNumeric/IsWhitespace/IsAsciiPrintable检查字符串中的字符检查字符串中的字符DefaultStringprotectsagainstanullinputString防止输入字符串为空Rotaterotate(循环移位)aStringRotate(circularshift)StringReverse/ReverseDelimited反转字符串-反转字符串AbbreviateabbreviatestringusingellipsisoranothergivenStringAbbreviateaStringusinganellipsisoranothergivenStringDifferencecompares字符串及其差异报告LevenshteinDistance将一个字符串更改为另一个字符串所需的更改次数