java怎么随机生成一个字符串?

就是和随机数一样随机生成一个字符串

/**
* 产生随机字符串
* */
private static Random randGen = null;
private static char[] numbersAndLetters = null;

public static final String randomString(int length) {
if (length < 1) {
return null;
}
if (randGen == null) {
randGen = new Random();
numbersAndLetters = ("0123456789abcdefghijklmnopqrstuvwxyz" +
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ").toCharArray();
//numbersAndLetters = ("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ").toCharArray();
}
char [] randBuffer = new char[length];
for (int i=0; i<randBuffer.length; i++) {
randBuffer[i] = numbersAndLetters[randGen.nextInt(71)];
//randBuffer[i] = numbersAndLetters[randGen.nextInt(35)];
}
return new String(randBuffer);
}

//调用此方法randomString(int),int是字符串的长度,即可产生指定长度的随机字符串。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-05-09
我的思路:
1,定义一个字符数组;
2,随机生成一个int数,范围是此数组的长度;
3,利用生成的int数,取数组中的字符;
4,可以用for循环,多取几次,并连接成字符串;
仅作参考,不懂再问!
第2个回答  2011-05-09
public static String getRandomString(int length) { //length表示生成字符串的长度
String base = "abcdefghijklmnopqrstuvwxyz0123456789"; //生成字符串从此序列中取
Random random = new Random();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < length; i++) {
int number = random.nextInt(base.length());
sb.append(base.charAt(number));
}
return sb.toString();
}
第3个回答  2011-05-09
两个方法。 1 。生成2~3为随机数 将他们最为ascii编码生成字符。例如 随即生成 65 就是 “A”以此类推。缺点 会生成 无法显示的字符 例如 13 回车等。
2。做个数组里面存入你要生成的字符编码 例如a~z,0~9,A~Z 等。 然后随即生成一个数 , 把这个数作为下标取字符。
第4个回答  2011-05-09
元素是一样的,字符串有字符组成,字符有具体的int码
如果想偷懒,commons-lang.jar其下的现成的类StringUtils

java中如何产生一个16位数字组成的随机字符串?谢谢各位了
} Java生成随机字符串的两种方式:1、生成的字符串每个位置都有可能是str中的一个字母或数字,需要导入的包是import java.util.Random;\/\/length用户要求产生字符串的长度。public static String getRandomString(int length){ String str="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";Ran...

在java语言中如何随机地生成一个字符串
public static void main(String[] args) { UUID uuid = UUID.randomUUID();System.out.println (uuid);} } 编译运行输出:07ca3dec-b674-41d0-af9e-9c37583b08bb 两种方式生成guid 与uuid 需要comm log 库 \/ author Administrator TODO To change the template for this generated type commen...

java怎么随机生成一个字符串?
\/\/调用此方法randomString(int),int是字符串的长度,即可产生指定长度的随机字符串。

java如何实现随机输出一个字符串,由[a-zA-Z0-9]组成 长度为4,并以数字...
import java.util.Random;public class Test{ public static void main(String[] args) { String str = getRandomString(4);System.out.println(str);} public static String getRandomString(int length) { \/\/ 定义一个字符串(A-Z,a-z,0-9)即62位;String str = "zxcvbnmlkjhgfdsaqwertyui...

java如何定义一个以字母开头的随机字符串
)方法。生成器类还可以帮助我们配置生成器的属性。在调用build()方法之前,我们可以使用以下方法设置构建器的属性:withinRange()指定在生成的字符串中允许的最小和最大代码点。filteredBy()将生成的字符串中的字符限制为与至少提供的谓词之一匹配的字符。这样即可将java定义一个以字母开头的随机字符串。

java中如何随机生成一个已知长度的字符串 要用一个for循环控制输出的...
先封装一个输出单一字符的方法,然后放入for循环中,用for循环每次的key值来判断对这个封装的方法调用的次数

java中,怎么随机生成一个5位的字符串
纯数字和数字字母混合的两种,原理都差不多,自己选吧String Resultnumber = "";String Result = "";char[] str = "0123456789".toCharArray();char[] Str = "0123456789abcdefghijkmlnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".toCharArray();for (int i = 0; i < 5; i++) {int index = (...

Java如何随机生成一个10个长度的字符串
自定义一个char数组,长度为x,利用Math.random函数产生0-1的随机数,通过乘以或加减数来符合你长度x范围内的数, 调用10次组成的字符串就是你想要的.如果是不指定char数组 那干脆获取一个UUID截取10个 就行了

java如何才能让字符串数组中的字符随机输出一个
1)用java.util.Random类:Random rad = new Random();int index = rad.nextInt(app.length);System.out.println(app[index]);2)用Math类:int index = (int) Math.random() * app.length;System.out.println(app[index]);

Java怎么生成一个指定长度的字符串,且这个字符串必须包含大小写字母和数...
void main(void){ FILE * f;\/\/文件句柄 char buf[20];\/\/随机字符串 int i;randomize();\/\/初始化随机值 for(i = 0;i < 20;i++)buf[i] = cszChar[random(62)];\/\/随机从cszChar中取一个字符 f = fopen( "filename ", "w ");\/\/打开...

相似回答