读书人

想用上面的代码随机产生两个不同的单字

发布时间: 2012-10-25 10:58:57 作者: rapoo

想用下面的代码随机产生两个不同的单字符字符串,如“A”,“8”,请帮看看,什么实际仍然会重复?

Java code
str1=GetRandomCharString("");;str3=GetRandomCharString(str1);;   private String GetRandomCharString(String strExclude){        Random randGen = null;        char[] numbersAndLetters = null;        if (randGen == null)         {            randGen = new Random();            numbersAndLetters = ("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ").toCharArray();        }        char randC;        String randStr="";        randC = numbersAndLetters[randGen.nextInt(61)];        randStr=String.valueOf(randC);        while(strExclude.indexOf(randStr)>0){                        randC = numbersAndLetters[randGen.nextInt(61)];            randStr=String.valueOf(randC);        }        return randStr;    }


[解决办法]
不稳定算法,不知道什么时候还会重复

读书人网 >J2SE开发

热点推荐