标签:dom1 参考 包含 print and 随机 builder string oms
//方法一 需要包:import java.util.Random; //生成的字符串每个位置都有可能是str中的一个字母或数字 int length = 12; String str="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; Random random = new Random(); StringBuilder stringBuilder = new StringBuilder(); for(int i = 0;i<length;i++){ //random.nextInt(62)会生成一个范围在0~x(不包含X)内的任意正整数 int num = random.nextInt(62); stringBuilder.append(str.charAt(num)); } System.out.println(stringBuilder); //方法二 org.apache.commons.lang包下有一个RandomStringUtils类,其中有一个randomAlphanumeric(int length)函数, // 可以随机生成一个长度为length的字符串。 String string= RandomStringUtils.randomAlphanumeric(12); System.out.println(string); //产生5位长度的随机字符串,中文环境下是乱码 System.out.println(RandomStringUtils.random(5)); //使用指定的字符生成5位长度的随机字符串 System.out.println(RandomStringUtils.random(5, new char[]{‘a‘,‘b‘,‘c‘,‘d‘,‘e‘,‘f‘, ‘1‘, ‘2‘, ‘3‘})); //生成指定长度的字母和数字的随机组合字符串 System.out.println(RandomStringUtils.randomAlphanumeric(5)); //生成随机数字字符串 System.out.println(RandomStringUtils.randomNumeric(5)); //生成随机[a-z]字符串,包含大小写 System.out.println(RandomStringUtils.randomAlphabetic(5)); //生成从ASCII 32到126组成的随机字符串 System.out.println(RandomStringUtils.randomAscii(4)); //方法三 可以指定某个位置是a-z、A-Z或是0-9 Random random1=new Random(); StringBuffer sb=new StringBuffer(); for(int i=0;i<length;i++){ int number=random1.nextInt(3); long result=0; switch(number){ case 0: //对应A-Z 参考ASCII编码表 result=Math.round(Math.random()*25+65); sb.append(String.valueOf((char)result)); break; case 1: //对应a-z 参考ASCII编码表 result=Math.round(Math.random()*25+97); sb.append(String.valueOf((char)result)); break; case 2: //对应数字 sb.append(String.valueOf(new Random().nextInt(10))); break; } } System.out.println(sb);
标签:dom1 参考 包含 print and 随机 builder string oms
原文地址:https://www.cnblogs.com/succ5120/p/13234307.html