1. 程式人生 > >java隨機數生成工具類RandomStringUtils使用教程

java隨機數生成工具類RandomStringUtils使用教程

最近專案中需要用到隨機數,網上搜了一下,發現 RandomStringUtils 這個工具類非常的不錯。而這個類呢?就在我們的最常用的 Apache Commons Lang (org.apache.commons.lang3.RandomStringUtils)包中,這真是熟悉而又陌生的知識。本文總結一下它的詳細用法!

RandomStringUtils工具類大概一共有十幾個方法,但是常用的大概也就四五個。

//產生5位長度的隨機字串,中文環境下是亂碼

RandomStringUtils.random(5);

//使用指定的字元生成5位長度的隨機字串

RandomStringUtils.random(

5new char[]{'a','b','c','d','e','f''1''2''3'});

//生成指定長度的字母和數字的隨機組合字串

RandomStringUtils.randomAlphanumeric(5);

//生成隨機數字字串

RandomStringUtils.randomNumeric(5);

//生成隨機[a-z]字串,包含大小寫

RandomStringUtils.randomAlphabetic(5);

//生成從ASCII 32到126組成的隨機字串

RandomStringUtils.randomAscii(

4);

RandomStringUtils 類,非常的簡單非常的方便。

/**

 * count 建立一個隨機字串,其長度是指定的字元數,字元將從引數的字母數字字符集中選擇,如引數所示。

 * letters true,生成的字串可以包括字母字元

 * numbers true,生成的字串可以包含數字字元

 */

String random = RandomStringUtils.random(15truefalse);

System.out.println(random);

/**

 

* 建立一個隨機字串,其長度是指定的字元數。

 * 將從所有字符集中選擇字元

 */

random = RandomStringUtils.random(22);

System.out.println(random);

/**

 * 建立一個隨機字串,其長度是指定的字元數。

 * 字元將從字串指定的字符集中選擇,不能為空。如果NULL,則使用所有字符集。

 */

random = RandomStringUtils.random(15"abcdefgABCDEFG123456789");

System.out.println(random);

/**

 * 建立一個隨機字串,其長度是指定的字元數,字元將從引數的字母數字字符集中選擇,如引數所示。

 * count:計算建立的隨機字元長度

 * start:字符集在開始時的位置

 * end:字符集在結束前的位置,必須大於65

 * letters true,生成的字串可以包括字母字元

 * numbers true,生成的字串可以包含數字字元

 *

 */

random = RandomStringUtils.random(10095129truetrue);

/**

 * 產生一個長度為指定的隨機字串的字元數,字元將從拉丁字母(a-z、A-Z的選擇)。

 * count:建立隨機字串的長度

 */

random = RandomStringUtils.randomAlphabetic(15);

/**

 * 建立一個隨機字串,其長度介於包含最小值和最大最大值之間,,字元將從拉丁字母(a-z、A-Z的選擇)。

 * minLengthInclusive :要生成的字串的包含最小長度

 * maxLengthExclusive :要生成的字串的包含最大長度

 */

random = RandomStringUtils.randomAlphabetic(215);

/**

 * 建立一個隨機字串,其長度是指定的字元數,字元將從拉丁字母(a-z、A-Z)和數字0-9中選擇。

 * count :建立的隨機數長度

 */

random = RandomStringUtils.randomAlphanumeric(15);

 /**

 * 建立一個隨機字串,其長度介於包含最小值和最大最大值之間,字元將從拉丁字母(a-z、A-Z)和數字0-9中選擇。

 * minLengthInclusive :要生成的字串的包含最小長度

 * maxLengthExclusive :要生成的字串的包含最大長度

 *

 */

random = RandomStringUtils.randomAlphanumeric(568);

/**

 * 建立一個隨機字串,其長度是指定的字元數,字元將從ASCII值介於32到126之間的字符集中選擇(包括)

 * count:隨機字串的長度

 */

random = RandomStringUtils.randomAscii(15);

/**

 * 建立一個隨機字串,其長度介於包含最小值和最大最大值之間,字元將從ASCII值介於32到126之間的字符集中選擇(包括)

 * minLengthInclusive :要生成的字串的包含最小長度

 * maxLengthExclusive :要生成的字串的包含最大長度

 */

random = RandomStringUtils.randomAscii(1530);

/**

 * 建立一個隨機字串,其長度是指定的字元數,將從數字字符集中選擇字元。

 * count:生成隨機數的長度

 */

random = RandomStringUtils.randomNumeric(15);

/**

 * 建立一個隨機字串,其長度介於包含最小值和最大最大值之間,將從數字字符集中選擇字元.

 * minLengthInclusive, 要生成的字串的包含最小長度

 * maxLengthExclusive 要生成的字串的包含最大長度

 */

random = RandomStringUtils.randomNumeric(1520);