轉自http://www.blogjava.net/ronghao
檢查字符串是否爲空或null或僅僅包含空格
String test = "";
String
test1=" ";
String test2 = "\n\n\t";
String test3 = null;
System.out.println( "test blank? " + StringUtils.isBlank( test )
);
System.out.println( "test1 blank? " + StringUtils.isBlank(
test1 ) );
System.out.println( "test2 blank? " + StringUtils.isBlank( test2
) );
System.out.println( "test3 blank? " + StringUtils.isBlank( test3 )
);
運行結果:
test blank? true
test1 blank? true
test2 blank?
true
test3 blank? true
相對應的還有一個StringUtils.isNotBlank(String str)
StringUtils.isEmpty(String
str)則檢查字符串是否爲空或null(不檢查是否僅僅包含空格)
分解字符串
StringUtils.split(null, *, *) = null
StringUtils.split("", *,
*) = []
StringUtils.split("ab de fg", null, 0) = ["ab",
"cd", "ef"]
StringUtils.split("ab de fg", null, 0) = ["ab", "cd",
"ef"]
StringUtils.split("ab:cd:ef", ":", 0) = ["ab", "cd", "ef"]
StringUtils.split("ab:cd:ef", ":", 1) = ["ab:cd:ef"]
StringUtils.split("ab:cd:ef", ":", 2) = ["ab", "cd:ef"]
StringUtils.split(String str,String separatorChars,int max) str爲null時返回null
separatorChars爲null時默認爲按空格分解,max爲0或負數時分解沒有限制,max爲1時返回整個字符串,max爲分解成的個數(大於實際則無效)
去除字符串前後指定的字符
StringUtils.strip(null, *) = null
StringUtils.strip("",
*) = ""
StringUtils.strip("abc", null) = "abc"
StringUtils.strip(" abc ", null) = "abc"
StringUtils.strip(" abcyx",
"xyz") = " abc"
StringUtils.strip(String str,String stripChars)
str爲null時返回null,stripChars爲null時默認爲空格
創建醒目的Header(調試時用)
public String
createHeader( String title ) {
int width = 30;
String stars =
StringUtils.repeat( "*", width);
String centered = StringUtils.center(
title, width, "*" );
String heading = StringUtils.join(new
Object[]{stars, centered, stars}, "\n");
return heading;
}
調用createHeader("TEST")的輸出結果:
******************************
************ TEST ************
******************************
字符的全部反轉及以單個詞爲單位的反轉
String original = "In
time, I grew tired of his babbling nonsense.";
StringUtils.reverse(
original ) = ".esnesnon gnilbbab sih fo derit werg I ,emit nI"
以單個詞爲單位的反轉
public Sentence reverseSentence(String sentence) {
String
reversed = StringUtils.chomp( sentence, "." );
reversed =
StringUtils.reverseDelimited( reversed, ' ' );
reversed = reversed +
".";
return reversed;
}
String sentence = "I am Susan."
reverseSentence( sentence ) ) = "Susan am I."
檢查字符串是否僅僅包含數字、字母或數字和字母的混合
String test1 =
"ORANGE";
String test2 = "ICE9";
String test3 = "ICE CREAM";
String test4 = "820B Judson Avenue";
String test5 = "1976";
結果:
boolean t1val = StringUtils.isAlpha( test1 ); // returns true
boolean t2val
= StringUtils.isAlphanumeric( test2 ); // returns true
boolean t3val =
StringUtils.isAlphaSpace( test3 ); // returns true
boolean t4val =
StringUtils.isAlphanumericSpace( test4 ); // returns true
boolean t5val =
StringUtils.isNumeric( test5 ); // returns true