67,513
社区成员
发帖
与我相关
我的任务
分享
public class test
{
public static void main(String args[]) throws Exception
{
StringBuffer sb = new StringBuffer();
for(int i = 0;i < 22;i++)
{
sb.append(createRandomChar(sb.toString()));
}
System.out.println(sb.toString());
}
public static char createRandomChar(String str) throws Exception
{
char[] list = {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','0','1','2','3','4','5','6','7','8','9'};
char c = ' ';
do
{
c = list[new Random().nextInt(list.length)];
}
while(str.indexOf(c) != -1);
return c;
}
}
package com.student.test3;
import java.util.Arrays;
import java.util.Random;
public class MyRandom
{
public static void main(String[] args)
{
// TODO Auto-generated method stub
int[] randArray = new int[22];
int randInt = 0;
int count = 0;
boolean flag = false;
Random rand = new Random();
while (count < 22)
{
randInt = rand.nextInt(100);
for (int i = 0; i < count; i++)
{
if (randArray[i] == randInt)
{
flag = true;
break;
}
else
{
flag = false;
}
}
if (!flag && randInt != 0)
{
randArray[count++] = randInt;
}
}
System.out.println(Arrays.toString(randArray));
}
}
package com.student.test3;
import java.security.SecureRandom;
class RandomString
{
private static final String POSSIBLE_CHARS = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
public String getRandomString(int length)
{
StringBuffer sbf = new StringBuffer();
SecureRandom random = new SecureRandom();
for (int i = 0; i < length; i++)
{
sbf.append(POSSIBLE_CHARS.charAt(random.nextInt(POSSIBLE_CHARS
.length())));
}
return sbf.toString();
}
}
public class Ansewer66
{
public static void main(String[] args)
{
// TODO Auto-generated method stub
System.out.println(new RandomString().getRandomString(22));
// 测试
/*
* for (int i = 0; i < 2000000; i++) { String s = new
* RandomString().getRandomString(10); Set<String> check = new
* HashSet<String>(); if (check.contains(s)) { throw new
* IllegalStateException("重复字符被发现: " + s); } else {
* System.out.println("产生第"+(i+1)+"个字符:"+s); check.add(s); } }
*/
}
}
private static String get9Str(int i)
{
StringBuilder sb = new StringBuilder();
sb.append(i);
while(sb.length()!=9)
sb.append(0);//不同的CPU使用不同的补足
return sb.toString();
}
try {
String time = Long.toHexString(System.currentTimeMillis());
KeyGenerator generator = KeyGenerator.getInstance("DES");
SecretKey key = generator.generateKey();
Cipher cipher = Cipher.getInstance("DES");
cipher.init(Cipher.ENCRYPT_MODE, key);
byte[] des_byte = cipher.doFinal(time.getBytes());
String final_String = new BASE64Encoder().encode(des_byte);
final_String = final_String.replace("==", "");
System.out.println(final_String);
} catch (Exception e) {
e.printStackTrace();
}
public class SerGenerator {
private static int dis;
private static Object lock = new Object();
private final static char[] letters = {'A', 'C', '1', '2', '3','4', 'a', 'e', 'f', 'z'};
public static String getSer()
{
String tStr = String.valueOf(System.currentTimeMillis());
StringBuilder sb = new StringBuilder();
/*从当前时间的毫秒获取13位数*/
for(int i=0;i<tStr.length();i++)
sb.append(letters[tStr.charAt(i)-'0']);
synchronized(lock)
{
sb.append(get9Str(dis++));
}
return sb.toString();
}
private static String get9Str(int i)
{
StringBuilder sb = new StringBuilder();
sb.append(i);
while(sb.length()!=9)
sb.append(0);
return sb.toString();
}
public static void main(String[] args) {
System.out.println(getSer());
}
}
public class SerGenerator {
private static int dis;
private static Object lock = new Object();
private final static char[] letters = {'A', 'C', '1', '2', '3','4', 'a', 'e', 'f', 'z'};
public static String getSer()
{
String tStr = String.valueOf(System.currentTimeMillis());
StringBuilder sb = new StringBuilder();
/*从当前时间的毫秒获取13位数*/
for(int i=0;i<tStr.length();i++)
sb.append(letters[tStr.charAt(i)-'0']);
/*随机生成另外八位,由于前面的13位数不可能重复,所以生成的串是不重复的*/
for(int i=0;i<8;i++)
sb.append(letters[(int) (Math.random()*10)]);
synchronized(lock)
{
sb.append(dis++);
}
return sb.toString();
}
public static void main(String[] args) {
System.out.println(getSer());
}
}
UUID uuid = UUID.randomUUID();
System.out.println(u);
boolean flag=false;
StringBuilder sb = new StringBuilder();
char[] letters = {'A', 'C', '1', '2', '3','4', 'a', 'e', 'f', 'z'};
for(int i=0;i<22;i++){
do{
int temp=(int)(Math.random()*letters.length());
sb.append(letters[temp]);
for(int i=0;i<sb.length();i++){
if(letters[temp]==(sb.charAt(i))){
flag=true;
sb.deletecharAt(i);//如果加进去的是重复的,就删除它
break;
}
flag=false;
}
}while(flag);
}
boolean flag=false;
StringBuilder sb = new StringBuilder();
char[] letters = {'A', 'C', '1', '2', '3','4', 'a', 'e', 'f', 'z'};
for(int i=0;i<22;i++){
do{
int temp=(int)(Math.random()*letters.length());
sb.append(letters[temp]);
for(int i=0;i<sb.length();i++){
if(letters[temp]==(sb.charAt(i))){
flag=true;
break;
}
flag=false;
}
}while(flag);
}
char[] letters = {'A', 'C', '1', '2', '3','4', 'a', 'e', 'f', 'z'};
String tStr = String.valueOf(System.currentTimeMillis());
StringBuilder sb = new StringBuilder();
/*从当前时间的毫秒获取13位数*/
for(int i=0;i<tStr.length();i++)
sb.append(letters[tStr.charAt(i)-'0']);
/*随机生成另外九位,由于前面的13位数不可能重复,所以生成的串是不重复的*/
for(int i=0;i<9;i++)
sb.append(letters[(int) (Math.random()*10)]);
System.out.println(sb.toString());
char[] letters = {'A', 'C', '1', '2', '3','4', 'a', 'e', 'f', 'z'};
String tStr = String.valueOf(System.currentTimeMillis());
StringBuilder sb = new StringBuilder();
/*从当前时间的毫秒获取12位数*/
for(int i=0;i<tStr.length();i++)
sb.append(letters[tStr.charAt(i)-'0']);
/*随机生成另外十位,由于前面的12位数不可能重复,所以生成的串是不重复的*/
for(int i=0;i<9;i++)
sb.append(letters[(int) (Math.random()*10)]);
System.out.println(sb.toString());