java中如何产生一个16位数字组成的随机字符串?

 我来答
crystalstar0
高粉答主

推荐于2019-11-01 · 说的都是干货,快来关注
知道小有建树答主
回答量:190
采纳率:98%
帮助的人:6.1万
展开全部

方法如下:

Random ran=new random();

boolean flag=true;

while(flag){ 

int a=ran.nextInt(99999999); 

int b=ran.nextInt(99999999);

long c=a*100000000L+b; 

if(c>1000000000000000L&&c<9999999999999999L){

flag=false;
c1=c;
String num=String.valueOf(c1); 

Java生成随机字符串的两种方式:

1、生成的字符串每个位置都有可能是str中的一个字母或数字,需要导入的包是import java.util.Random;

//length用户要求产生字符串的长度。

public static String getRandomString(int length){

String str="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";

Random random=new Random();

StringBuffer sb=new StringBuffer();

for(int i=0;i<length;i++){

int number=random.nextInt(62);

sb.append(str.charAt(number));

}

return sb.toString();

}

2、可以指定某个位置是a-z、A-Z或是0-9,需要导入的包是import java.util.Random;

//可以指定字符串的某个位置是什么范围的值。

public static String getRandomString2(int length){

Random random=new Random();

StringBuffer sb=new StringBuffer();

for(int i=0;i<length;i++){

int number=random.nextInt(3);

long result=0;

switch(number){

case 0:

result=Math.round(Math.random()*25+65);

sb.append(String.valueOf((char)result));

break;

case 1:

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;

}

}

return sb.toString();

}

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式