首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

依据时间生成12位数的随机编号(数字和字母的组合)

2012-07-30 
根据时间生成12位数的随机编号(数字和字母的组合)根据时间生成12位数的随机编号(数字和字母的组合),随机编

根据时间生成12位数的随机编号(数字和字母的组合)
根据时间生成12位数的随机编号(数字和字母的组合),随机编号肯定是不能相同的,随机编号中不能含有O、I、0、U、V等英文字母 ,求大虾指点!!!!!!!!

[解决办法]
代码大致如下,letters[0]-letters[9]你设置为符合条件的字符就可以了。

Java code
    char[] letters = new char[10];        for(int i=0;i<10;i++)            letters[i] = (char) ('A'+i);                 String tStr = String.valueOf(System.currentTimeMillis());        System.out.println(tStr);        StringBuilder sb = new StringBuilder();        for(int i=1;i<tStr.length();i++)        {            sb.append(letters[tStr.charAt(i)-'0']);        }        System.out.println(sb.toString());
[解决办法]
Java code
        char[] letters = new char[10];        for(int i=0;i<10;i++)            letters[i] = (char) ('A'+i);                 String tStr = String.valueOf(System.currentTimeMillis());//tStr为当前时间  /*因为tStr的字符只有‘0’-‘9’,我们可以把它看成索引到letters中找相应的字符,这样相当于“置换”,所以是不会重复的。*/        StringBuilder sb = new StringBuilder();        for(int i=1;i<tStr.length();i++)        {            sb.append(letters[tStr.charAt(i)-'0']);/*tStr.charAt(i)-'0'转换成相应的数字,如‘9’-‘0’=9*/        }        System.out.println(sb.toString()); 

热点排行