A. 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 = ("" +
"").toCharArray();
//numbersAndLetters = ("").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是字符串的长度,即可产生指定长度的随机字符串。
B. java如何实现随机输出一个字符串,由[a-zA-Z0-9]组成 长度为4,并以数字结尾
如图所示即可。
package test;
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 = "";
// 由Random生成随机数
Random random = new Random();
StringBuffer sb = new StringBuffer();
// 长度为几就循环几减一次
for (int i = 0; i < length - 1; ++i) {
// 产生0-61的数字
int number = random.nextInt(62);
// 将产生的数字通过length次承载到sb中
sb.append(str.charAt(number));
}
//补全最后一个数字位
sb.append(random.nextInt(9));
// 将承载的字符转换成字符串
return sb.toString();
}
}
C. java程序中怎样生成0到9的6个随机数,谢谢啦!要完整的程序,谢谢~~
public class MyRandom {
static Random r = new Random();
static String ssource = "0123456789";
static char[] src = ssource.toCharArray();
//产生随机字符串
private static String randString (int length)
{
char[] buf = new char[length];
int rnd;
for(int i=0;i<length;i++)
{
rnd = Math.abs(r.nextInt()) % src.length;
buf[i] = src[rnd];
}
return new String(buf);
}
//调用该方法,产生随机字符串,
//参数i: 为字符串的长度
public static String runVerifyCode(int i)
{
String VerifyCode = randString(i);
return VerifyCode;
}
public static void main(String[] args) {
MyRandom t=new MyRandom();
t.runVerifyCode(10);
}
}
在生成随机数的地方直接调用上面的 MyRandom.runVerifyCode(int i)
;i是你需要生成几位随机数,
D. Java中怎样产生随机数和随机字母
java产生随机数和随机字母,使用madom类,示例如下:
packagecom.qiu.lin.he;
publicclassCeShi{
publicstaticvoidmain(String[]args){
intstr1=0;
for(inti=0;i<25;i++){//你想生成几个字符的,就把4改成几,如果改成1,那就生成一个随机字母.
str1=(char)(Math.random()*26);
}
System.out.println("输出随机生成的字符串"+str1);
Stringstr="";
for(inti=0;i<25;i++){//你想生成几个字符的,就把4改成几,如果改成1,那就生成一个随机字母.
str=str+(char)(Math.random()*26+'A');
}
System.out.println("输出随机生成的字符串"+str);
}
}
运行结果如下:
E. java怎么生成32位唯一字符串
packagetests;/***随机生成32位字符串*/publicclassString32{publicstaticStringrandom(intlength){//传入的字符串的回长度答StringBuilderbuilder=newStringBuilder(length);for(inti=0;i
F. 用java 截取字符串,每三个一组
以下是将一长串数字分组用逗号隔开,每三个一组,转化为字符串.
例如:
2345678--->2,345,678
23--->23
privatestaticStringconvert(longspace){
Stringstr=String.valueOf(space);
StringBuilderbuilder=newStringBuilder(str);
str=builder.reverse().toString();
StringBuilderstringBuilder=newStringBuilder();
for(inti=0;i<str.length();i++){
if(i%3==0){
//防越界&保留最高位
if(i+3>str.length()){
stringBuilder.append(str.substring(i));
break;
}
stringBuilder.append(str.substring(i,i+3)+",");
}
}
str=stringBuilder.reverse().toString();
//消除字符串长度为3的倍数时多出的','
if(str.charAt(0)==','){
str=str.substring(1);
}
returnstr;
}
还可以再继续优化,间隔,分隔符.....哎呀,肚子好疼,再见!
G. Java怎么生成一个指定长度的字符串,且这个字符串必须包含大小写字母和数字
/**
* 得到一个随机的由数字与字母组成的文件名
* @return
* @date :2011-12-2
*/
public static String getRandomName(){
String name="";
Random random = new Random(); // 实例化一个Random对象
int itmp=0;
int length=20;//默认的文件长度是20
try{
length=Integer.valueOf(Config.getSingleConfig(ConfigItem.DOC_NAME_LENGTH));
}catch(Exception e){}
for (int i = 0; i <length ; i++) {
if (random.nextInt(2) == 1) {
itmp = random.nextInt(26) + 65; // 生成A~Z的字母
} else {
itmp = random.nextInt(10) + 48; // 生成0~9的数字
}
char ctmp = (char) itmp;
name += String.valueOf(ctmp);
}
return name;
}