怎么随机产生某一长度的字符串?

tanshudan 2005-05-22 08:54:27
public String RandomString(int Strlength) {
……
}
就想产生一串长度为Strlength的字符串,串中只包括字母和数字
串的重复率尽量低点,该怎么写呢?
...全文
131 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
HitXU 2005-05-22
  • 打赏
  • 举报
回复

public String createString(int len)
{
String base = "abcdefghijklmnopqrstuvwxyz0123456789";

String str = "" ;
for (int i = 0; i < len; i++)
{
int index = (int)(math.random() * 1000 % (base.length() - 1)) ;
str += base.charAt(index) ;
}
return str ;
}
  • 打赏
  • 举报
回复
public String RandomString(int Strlength) {
String str = "";
for (int i = 0; i < Strlength; i++) {
int a = (int) (Math.random() * 3);
if (a == 2) {
str += String.valueOf( (char) (65 + Math.random() * 26));
}
if (a == 1) {
str += String.valueOf( (char) (97 + Math.random() * 26));
}
if (a == 1) {
str += String.valueOf( (char) (48 + Math.random() * 10));
}
}
return str;
}
晨星 2005-05-22
  • 打赏
  • 举报
回复
产生一个随机的长度为N的字符串,跟产生一个长度为N的且各字母不重复的字符串所用的算法都完全不同的,前者就是对每一个分量做随机,后者就是对整个分量的空间做随机排序。
晨星 2005-05-22
  • 打赏
  • 举报
回复
既然是随机,那么就应该对重复率没有硬性要求。产生啥就算啥,不要追加条件。
这样的话,只要每一个字母都随机产生不就可以了么?

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧