天天看點

Commons-lang-2.5 字元串處理

1) StringUtils

如果 str 為null或者"" ,則列印第二個參數,下面的例子列印的是no,還有其他很多實用的字元串方法,請大家自行研究.

String str = null;

String str2 = StringUtils.defaultIfEmpty(str,"no");

2) RandomStringUtils

得到一個長度為10,編碼為utf-8的随機字元串

String str3 = RandomStringUtils.random(10, "utf-8");

3) Builder

Builder包裡的類提供了一些特殊的方法,可用來構造類的toString、hashCode、compareTo 和equals

方法,其基本思路就是構造出類的高品質的toString、hashCode、compareTo 和equals 方法,進而免去

了使用者自己定義這些方法之勞,隻要調用一下Builder 包裡面的方法就可以了.

public String toString() {

return ReflectionToStringBuilder.toString(this,ToStringStyle.MULTI_LINE_STYLE);

4) Validate

package test.common.lang;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import org.apache.commons.lang.Validate;

public class ValidateUtil111 {
	public static void main(String args[]) {
		// 以下所有驗證都會抛出異常,需要捕捉處理

		// 如果驗證為false,則輸出:false The validated expression is false
		int i = 20;
		Validate.isTrue(i > 30);

		// 如果驗證為false,則輸出:i小于30不合法
		Validate.isTrue(i > 30, "i小于30不合法");

		// 如果驗證為false,則輸出:List是空
		List data = new ArrayList();
		data.add(null);
		Validate.noNullElements(data, "List是空");

		// 如果驗證為false,則輸出:The validated map is empty
		HashMap hashmap = new HashMap();
		Validate.notEmpty(hashmap);
	}
}