StringUtils 工具類的使用
不點(diǎn)藍(lán)字關(guān)注,我們哪來(lái)故事?

正文如下
來(lái)源:blog.csdn.net/moshowgame
/article/details/102914895
也許你兩個(gè)都不知道,也許你除了isEmpty/isNotEmpty/isNotBlank/isBlank外,并不知道還有isAnyEmpty/isNoneEmpty/isAnyBlank/isNoneBlank的存在, come on ,讓我們一起來(lái)探索org.apache.commons.lang3.StringUtils;這個(gè)工具類
isEmpty系列
StringUtils.isEmpty()
是否為空. 可以看到 " " 空格是會(huì)繞過這種空判斷,因?yàn)槭且粋€(gè)空格,并不是嚴(yán)格的空值,會(huì)導(dǎo)致 isEmpty(" ")=false
StringUtils.isEmpty(null)?=?true
????????StringUtils.isEmpty("")?=?true
????????StringUtils.isEmpty("?")?=?false
????????StringUtils.isEmpty(“bob”)?=?false
????????StringUtils.isEmpty("?bob?")?=?false
????????/
????????*
????????*?NOTE:?This?method?changed?in?Lang?version?2.0.
????????*?It?no?longer?trims?the?CharSequence.
????????*?That?functionality?is?available?in?isBlank().
????????*
????????*?@param?cs??the?CharSequence?to?check,?may?be?null
????????*?@return?{@code?true}?if?the?CharSequence?is?empty?or?null
????????*?@since?3.0?Changed?signature?from?isEmpty(String)?to?isEmpty(CharSequence)
????????*/
public?static?boolean?isEmpty(final?CharSequence?cs)?{
????????return?cs?==?null?||?cs.length()?==?0;
}
StringUtils.isNotEmpty()
相當(dāng)于不為空 , = !isEmpty()
public?static?boolean?isNotEmpty(final?CharSequence?cs)?{
????????return?!isEmpty(cs);
}
StringUtils.isAnyEmpty()
是否有一個(gè)為空,只有一個(gè)為空,就為true.
????????StringUtils.isAnyEmpty(null)?=?true
????????StringUtils.isAnyEmpty(null,?“foo”)?=?true
????????StringUtils.isAnyEmpty("",?“bar”)?=?true
????????StringUtils.isAnyEmpty(“bob”,?“”)?=?true
????????StringUtils.isAnyEmpty("?bob?",?null)?=?true
????????StringUtils.isAnyEmpty("?",?“bar”)?=?false
????????StringUtils.isAnyEmpty(“foo”,?“bar”)?=?false
????????/
????????*?@param?css??the?CharSequences?to?check,?may?be?null?or?empty
????????*?@return?{@code?true}?if?any?of?the?CharSequences?are?empty?or?null
????????*?@since?3.2
????????*/
public?static?boolean?isAnyEmpty(final?CharSequence...?css)?{
????????if?(ArrayUtils.isEmpty(css))?{
????????????return?true;
????????}
????????for?(final?CharSequence?cs?:?css){
????????????if?(isEmpty(cs))?{
????????????????return?true;
????????????}
????????}
????????return?false;
}
StringUtils.isNoneEmpty()
相當(dāng)于!isAnyEmpty(css) , 必須所有的值都不為空才返回true
????????/
????????*?Checks?if?none?of?the?CharSequences?are?empty?("")?or?null.
????????*
????????*?
?????????*?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
?????????*?
????????*
????????*?@param?css??the?CharSequences?to?check,?may?be?null?or?empty
????????*?@return?{@code?true}?if?none?of?the?CharSequences?are?empty?or?null
????????*?@since?3.2
????????*/
public?static?boolean?isNoneEmpty(final?CharSequence...?css)?{isBank系列
StringUtils.isBlank()
是否為真空值(空格或者空值)
StringUtils.isBlank(null)?=?true
????????StringUtils.isBlank("")?=?true
????????StringUtils.isBlank("?")?=?true
????????StringUtils.isBlank(“bob”)?=?false
????????StringUtils.isBlank("?bob?")?=?false
????????/
????????*?Checks?if?a?CharSequence?is?whitespace,?empty?("")?or?null.
????????*?@param?cs??the?CharSequence?to?check,?may?be?null
????????*?@return?{@code?true}?if?the?CharSequence?is?null,?empty?or?whitespace
????????*?@since?2.0
????????*?@since?3.0?Changed?signature?from?isBlank(String)?to?isBlank(CharSequence)
????????*/
public?static?boolean?isBlank(final?CharSequence?cs)?{
????????int?strLen;
????????if?(cs?==?null?||?(strLen?=?cs.length())?==?0)?{
????????????return?true;
????????}
????????for?(int?i?=?0;?i?????????????if?(Character.isWhitespace(cs.charAt(i))?==?false)?{
????????????????return?false;
????????????}
????????}
????????return?true;
?}
StringUtils.isNotBlank()
是否真的不為空,不是空格或者空值 ,相當(dāng)于!isBlank();
public?static?boolean?isNotBlank(final?CharSequence?cs)?{
????????return?!isBlank(cs);
}
StringUtils.isAnyBlank()
是否包含任何真空值(包含空格或空值)
????????StringUtils.isAnyBlank(null)?=?true
????????StringUtils.isAnyBlank(null,?“foo”)?=?true
????????StringUtils.isAnyBlank(null,?null)?=?true
????????StringUtils.isAnyBlank("",?“bar”)?=?true
????????StringUtils.isAnyBlank(“bob”,?“”)?=?true
????????StringUtils.isAnyBlank("?bob?",?null)?=?true
????????StringUtils.isAnyBlank("?",?“bar”)?=?true
????????StringUtils.isAnyBlank(“foo”,?“bar”)?=?false
????????/
????????*?Checks?if?any?one?of?the?CharSequences?are?blank?("")?or?null?and?not?whitespace?only..
????????*?@param?css??the?CharSequences?to?check,?may?be?null?or?empty
????????*?@return?{@code?true}?if?any?of?the?CharSequences?are?blank?or?null?or?whitespace?only
????????*?@since?3.2
????????*/
public?static?boolean?isAnyBlank(final?CharSequence...?css)?{
????????if?(ArrayUtils.isEmpty(css))?{
????????????return?true;
????????}
????????for?(final?CharSequence?cs?:?css){
????????????if?(isBlank(cs))?{
????????????????return?true;
????????????}
????????}
????????return?false;
}
StringUtils.isNoneBlank()
是否全部都不包含空值或空格
StringUtils.isNoneBlank(null)?=?false
????????StringUtils.isNoneBlank(null,?“foo”)?=?false
????????StringUtils.isNoneBlank(null,?null)?=?false
????????StringUtils.isNoneBlank("",?“bar”)?=?false
????????StringUtils.isNoneBlank(“bob”,?“”)?=?false
????????StringUtils.isNoneBlank("?bob?",?null)?=?false
????????StringUtils.isNoneBlank("?",?“bar”)?=?false
????????StringUtils.isNoneBlank(“foo”,?“bar”)?=?true
????????/
????????*?Checks?if?none?of?the?CharSequences?are?blank?("")?or?null?and?whitespace?only..
????????*?@param?css??the?CharSequences?to?check,?may?be?null?or?empty
????????*?@return?{@code?true}?if?none?of?the?CharSequences?are?blank?or?null?or?whitespace?only
????????*?@since?3.2
????????*/
public?static?boolean?isNoneBlank(final?CharSequence...?css)?{
????????return?!isAnyBlank(css);
}StringUtils的其他方法
可以參考官方的文檔,里面有詳細(xì)的描述,有些方法還是很好用的.
https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html


往期推薦
-END-
↑ 點(diǎn)擊上方關(guān)注我公號(hào)?↑?
我是 泥瓦匠,堅(jiān)持分享編程,算法,Java 等干貨教程
一枚醫(yī)科大本科生,開源小作者,半吊子創(chuàng)業(yè)愛好者...
半吊子的自己在試錯(cuò),不知道以后會(huì)干什么,但享受現(xiàn)在的試錯(cuò),試錯(cuò)給我驚訝的生活
喜歡公號(hào)的互動(dòng)分享,感謝關(guān)注,路上遇見了你,同一小段時(shí)間之路,相伴 ~
長(zhǎng)按識(shí)別,加我微信

