java生成一个随机字符串

import java.util.Random;

public class lesson2
{
public static void main(String [] args)
{
String ccxl=generateString(100);
System.out.print(ccxl);
}

public static final String allChar = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
public static final String letterChar = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
public static final String numberChar = "0123456789";


public static String generateString(int length) //参数为返回随机数的长度
{
StringBuffer sb = new StringBuffer();
Random random = new Random();
for (int i = 0; i < length; i++)
{
sb.append(allChar.charAt(random.nextInt(allChar.length())));
}
return sb.toString();
}
}

/*
重点分析:
注释1、sb.append(allChar.charAt(random.nextInt(allChar.length())))
注释2、sb:为StringBuffer的一个对象,可以理解为String型的数据,但由于StringBuffer是非静态方法,所以必须先实例化(生成一个对象)后再使用
注释3、sb.append(X):将括号里的数据X转换成sb对应的类型,由于“StringBuffer sb = new StringBuffer();”已经将sb定义为字符串类型,所以X也将随之转换成String型数据,因为我们最终需要输出的是一个字符串。
注释4、charAt:表示获取某个定位的字符
注释5、allChar.charAt(n):表示获取allChar中第n个字符,比如n=2,返回结果为“2”;又比如n=10,返回“A”
注释6、nextInt:游标,即这个东西指到哪里就取哪里的数据。
注释7、random.nextInt(n):随机游标,及在0到n的范围内无规则的取数,从而实现随机效果
注释8、allChar.length():字符串allChar的长度。
注释9、random.nextInt(allChar.length()):任意读取allChar长度范围内的数字,即allChar长度为62就在0-62中间任意取值,千万搞清楚并不是取allChar对应字符串里面的字符。
注释10、allChar.charAt(random.nextInt(allChar.length())):任意读取allChar对应字符串中的一个字符。
注释11、sb.append(allChar.charAt(random.nextInt(allChar.length()))):将“注释10”中的字符转为字符型。

如果还不清楚的话说明你还没有到学习这个函数的阶段。


*/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值