生成随机字符串随机数生成工具123456import java.util.Random;/** * 伪随机数生成类 */private static final Random RANDOM = new Random(); 获取随机数12345678/** * 获取指定范围内的随机数 * @param value 随机数最大值+1 * @return [0,value)中的整数 */private static int getRandomNumber(int value){ return RANDOM.nextInt(value);} 获取随机字符串123456789101112131415161718/** * 从str中获取随机字符串 * @param size 字符串长度 * @param str 字符来源集合 * @return 随机字符集合 */private static String getRandomString(int size,String str){ if (size <= 0 || str == null || str.length() <= 0){ return ""; } StringBuilder sb = new StringBuilder(); for (int i = 0; i < size; i++) { sb.append( str.charAt( getRandomNumber(str.length()))); } return sb.toString();} 交换字符位置1234567891011121314/** * 交换字符位置 * @param chars 字符数组 * @param i 字符1 * @param j 字符2 */private static void swap(char[] chars,int i,int j){ if (i == j){ return; } char ch = chars[i]; chars[i] = chars[j]; chars[j] = ch;} 乱序12345678910111213/** * 打乱字符串顺序 * @param str 字符串 * @return 乱序后的字符串 */private static String shuffleString(String str){ char[] chars = str.toCharArray(); // 参考自java.util.Collections.shuffle() for (int i = chars.length; i > 1; i--) { swap(chars, i-1, RANDOM.nextInt(i)); } return String.valueOf(chars);}