1. 程式人生 > >Java-隨機字串生成方式

Java-隨機字串生成方式

/**
* 各種隨機字串生成的方法
*
* @author Administrator
*
*/
public class RandomString {
public static final String ALLCHAR = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
public static final String LETTERCHAR = "abcdefghijkllmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
public static final String NUMBERCHAR = "0123456789"
; /** * 返回一個定長的隨機字串(包含大小寫字母、數字) * * @param length * 隨機字串長度 * @return 隨機字串 */ public static String generateString(int length) { StringBuffer sb = new StringBuffer(); Random random = new Random(); for (int i = 0; i < length; i++) { sb.append(ALLCHAR.charAt(random.nextInt(ALLCHAR.length()))); } return sb.toString(); } /** * 返回一個定長的隨機純字母字串(只包含大小寫字母) * * @param
length * 隨機字串長度 * @return 隨機字串 */
public static String generateUpperLowerString(int length) { StringBuffer sb = new StringBuffer(); Random random = new Random(); for (int i = 0; i < length; i++) { sb.append(LETTERCHAR.charAt(random.nextInt(LETTERCHAR.length()))); } return sb.toString(); } /** * 返回一個定長的隨機純小寫字母字串(只包含小寫字母) * * @param
length * 隨機字串長度 * @return 隨機字串 */
public static String generateLowerString(int length) { return generateUpperLowerString(length).toLowerCase(); } /** * 返回一個定長的隨機純大寫字母字串(只包含大寫字母) * * @param length * 隨機字串長度 * @return 隨機字串 */ public static String generateUpperString(int length) { return generateUpperLowerString(length).toUpperCase(); } /** * 生成一個定長的純0字串 * * @param length * 字串長度 * @return 純0字串 */ public static String generateZeroString(int length) { StringBuffer sb = new StringBuffer(); for (int i = 0; i < length; i++) { sb.append('0'); } return sb.toString(); } /** * 根據數字生成一個定長的字串,長度不夠前面補0 * * @param num * 數字 * @param fixdlenth * 字串長度 * @return 定長的字串 */ public static String generateFixdLengthString(long num, int fixedlenth) { StringBuffer sb = new StringBuffer(); String strNum = String.valueOf(num); if (fixedlenth - strNum.length() >= 0) { sb.append(generateZeroString(fixedlenth - strNum.length())); } else { throw new RuntimeException("將數字" + num + "轉化為長度為" + fixedlenth + "的字串發生異常!"); } sb.append(strNum); return sb.toString(); } /** * 每次生成的len位數都不相同(僅限於整型陣列的每個元素都0-9這十個基本數字,且len的值還不能大於陣列的長度) * * @param param * @return 定長的數字 */ public static int generateDifferentNum(int[] param, int len) { Random rand = new Random(); for (int i = param.length; i > 1; i--) { int index = rand.nextInt(i); int tmp = param[index]; param[index] = param[i - 1]; param[i - 1] = tmp; } int result = 0; for (int i = 0; i < len; i++) { result = result * 10 + param[i]; } return result; } }

相關推薦

Java-隨機字串生成方式

/** * 各種隨機字串生成的方法 * * @author Administrator * */ public class RandomString { public static final String ALLCHAR = "0123456789abcd

java 隨機字串工具類RandomStringUtils

開發中經常會到生成隨機數字、字母等場景。 apache提供的工具類已經為我們實現好了,所以就不用重複造輪子。 —apache的commons和google的guava已經為我們準備了很多常見的工具類。 //產生5位長度的隨機字串,中文環境下是亂碼 RandomStringUtils.ra

指定位數的純數字、純字母的隨機字串生成工具

這個工具類需要依賴common-lang3,可以實現指定位數的純數字、純字母的隨機字串生成,還可以自定義種子,根據您自定義的種子生成需要的隨機字串,原始碼如下: import org.apache.c

Java生成隨機字串生成隨即類

有時候我們在測試的時候需要構建一些物件,每次測試都要構建很麻煩,所以我們可以構建一些類,並給類賦一些隨機值。 @Data @ToString class Person { private Integer id; private Integer age; pr

java隨機生成一串字串數字或含有字母以及訂單號模擬

package org.utils; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Random; import java.util.UUID; /** * 隨機生成一串字串數字或含有字母

Java隨機生成8位字串

因業務需要,使用UUID生成32位的字串有點長,這個生成8位的字串方案可行 public static String[] chars = new String[] { "a", "b", "c", "d", "e", "f",

java生成隨機字串(A-Z0-9)

public static String getRandomChar(int length) { //生成隨機字串 char[] chr = {'0', '1

java隨機生成指定精度小數、定長字串------隨筆

示例程式碼 小數,字串、時間等示例程式碼 public class RandomTest { public static Random rand = new Random(); public static String dateStart

Java生成隨機字串,必須包含數字、小寫字母、大寫字母

轉載,來源:http://www.cnblogs.com/dongliyang/archive/2013/04/01/2994554.html 一道演算法題,生成隨機字串,必須包含數字、小寫字母、大寫字母。 為了生成隨機數方便,特別編寫StdRandom類(注1),AP

Java生成隨機字串的程式碼

public static String getRandomString(int length) { //length表示生成字串的長度    String base = "abcdefghijklmnopqrstuvwxyz0123456789";       Ran

java隨機生成××到××位長度字串,數字和字母組合(6-13位舉例子)

/** * 目的 :獲取隨機 6-13之間隨機數 包含 6 和 13 * (rd.nextDouble())隨機返回0-1之間的數 不包括1 *  乘以8 隨機產生0-8之間的數 不包括8 *  (int)轉換為整型 則隨機產生0-7之間的整數 */ public stati

java----隨機生成指定長度的內容

學習記錄public class RandomNumber{ //隨機生成指定長度的數字+字符串 或 文字 public static String getRandomNumberAndString(int lengthOfString){ int i=0; int

Java實現獲取隨機字串

1.  程式碼塊 import java.util.Random; /** * 隨機字串工具 * * @author volitation * */ public class RandomString { /** * 獲取指定長度隨機字串 * * @pa

[終章]進階20-流程控制結構--if/case/while結構 - 三個while的儲存過程案例(批量生成表單資料) - 隨機長度的隨機字串的儲存過程案例

1. mysql 儲存過程中儘量使用 @變數 而不用區域性變數, @變數不容易報錯!許可權小,更改一下就報錯! 2. sql中判斷相等'=' ,用'=' 不用'=='. 3. #流程控制結構 /* 順序結構: 程式從上往下依次執行; 分支結構: 程式從多條路徑中選擇一條往下執行

java隨機生成驗證碼

util類: package util; import java.awt.*; import java.awt.image.BufferedImage; import java.util.Random; public class ImageCreater { //畫內容 pu

Python 生成一段隨機字串的三種寫法

方法1 s1=''.join(random.choice(string.ascii_letters + string.digits) for _ in range(10**7)) 方法2 for _ in range(10**7): s2 += random.choic

生成簽名,隨機字串,XML轉為陣列,陣列轉XML,json封裝,獲取IP地址

/* * ******生成簽名********* */private function getSign($params){ ksort($params); //將引數陣列按照引數名ASCII碼從小到大排序 foreach ($params as $key => $item) {

js 生成一定長度隨機字串

function randomName(len) { len = len || 23; var chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; var maxPos = chars.length;

ruby 生成隨機數 和 隨機字串

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Linux和Oracle生成隨機字串

Linux 和Oracle裡面如何生成隨機字串: Linux 可以利用uuidgen來生成 [[email protected] ~]$ uuidgen f239007b-14a8-4a38-9925-794f5aad7740 我們要做的就是把裡面的"-"去掉,數字替換為字母,然後擷取想要