「java生成不重复字符串」java自动生成字符串
本篇文章给大家谈谈java生成不重复字符串,以及java自动生成字符串对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、java怎么生成6位不重复
- 2、java 生成不重复字符串
- 3、怎么样用java代码自动生成不重复的含有数字和字母的随机码
- 4、java如何生成不重复8位String类型字符串?
- 5、java中,我想随机获取不重复的字符串?应该怎么办?
java怎么生成6位不重复
描述不是很清晰,给你提供几段代码你看看咯
1、System.out.println((int)((Math.random()*9+1)*100000)); 这个是6位的随机数字
2、String chars = "abcdefghijklmnopqrstuvwxyz";
System.out.println(chars.charAt((int)(Math.random() * 26)));
这个是随机的26位字母字符串
如果有其它的规则你可以参考一下这些代码
java 生成不重复字符串
这么说
通过生成随机数每个随机数1-15对应一个字符串
生成随机数后通过看这个随机数是不是出现了的
然后输出
怎么判断是否重复出现可以先
new
a[15]
全部赋值为0然后
a[random(i)]
例如第一个是2
那么a[2]=1;
这么判断是否重复出现
至于随机数的函数自己看API
自有自己写才可以快速的提高
怎么样用java代码自动生成不重复的含有数字和字母的随机码
package tests;
/**
* 随机生成32位字符串
*/
public class String32 {
public static String random(int length){//传入的字符串的长度
StringBuilder builder = new StringBuilder(length);
for(int i = 0; i length; i++){
int r = (int) (Math.random()*3);
int rn1=(int)(48+Math.random()*10);
int rn2=(int)(65+Math.random()*26);
int rn3=(int)(97+Math.random()*26);
switch(r){
case 0:
builder.append((char)rn1);
break;
case 1:
builder.append((char)rn2);
break;
case 2:
builder.append((char)rn3);
break;
}
}
return builder.toString();
}
public static void main(String[] args){
String s = String32.random(32);
System.out.println(s);
}
}
java如何生成不重复8位String类型字符串?
没有什么特别好的办法
组成有 62个字符
那你每次就取 随机数x 0~62范围 对应a[x]
取8次组成一个字符串
存放在 hashmap中
直到hashmap中的个数满足要求 就停止
java中,我想随机获取不重复的字符串?应该怎么办?
1.先确定字符串的长度;
2.再确定字符串包括哪些字符;//这样可以确定字符的ASCII范围
3.然后就有很多方法去随机获取字符:
把字符存放在一个Map中的value中,如:map.put(1,"字符1");map.put(2,"字符2");
map.put(3,"字符3");一次类推,通过Math.random()*字符的个数,取整就可以得到key值,
map.get(key),value不为null,然后在map中删除这个key-value,可以设置map.put(key,null);
循环到字符串的长度为需要的长度。
具体一种方法的代码:
import java.util.HashMap;
import java.util.Map;
public class RandomStr {
public static void main(String[] args) {
for(int i=0; i 10; i++){//测试10次产生随机不重复字符串
generateRandomStr(5);
}
}
/**
* 产生不重复的随机字符串
* @param len 生成字符串的长度
* @return
*/
public static String generateRandomStr(int len){
String strRange = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";//字符串范围,根据自己的需求确定
MapString, String tmp = new HashMapString, String();
for(int i=0; istrRange.length(); i++){
tmp.put(i+"",strRange.charAt(i)+"");
}
StringBuffer result=new StringBuffer();
for(int i=0; ilen; i++){
String key = (int)(Math.random()*(strRange.length()-i))+"";
result.append(tmp.get(key));
tmp.remove(key);
tmp.put(key, tmp.get((strRange.length()-i-1)+""));//拿最后一个字符填充删除的位置key-value
}
System.out.println(result);
return result.toString();
}
}
关于java生成不重复字符串和java自动生成字符串的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。