哪位高人能告诉我下,Java里如何生成不重复的随机字符串?
最好能帮我写下代码。
小弟先谢了!

解决方案 »

  1.   

    36位.绝对不会重复的
    UUID.randomUUID().toString()
      

  2.   

     Set的功能方法。(不含重复元素,无序)
    (1)HashSet: 为快速查找而设计的Set。存入HashSet的对象必须定义hashCode()。
    (2)TreeSet: 保持次序的Set,底层为树结构。使用它可以从Set中提取有序的序列。
    (3)LinkedHashSet: 具有HashSet的查询速度,且内部使用链表维护元素的顺序(插入的次序)。于是在使用迭代器遍历Set时,结果会按元素插入的次序显示。这是我昨天的学习笔记里的  
    Collection API里有两个很的重要接口  Set和List
    不知道你说的生成是自己输入字符串它过滤掉重复的显示出来还是java自己输出不重复随机的字符串???
    如果是前一种就好说,后一种要考虑下。
      

  3.   


    用这个吧,理论上不会重复,如果你人品好,那就没办法了
    不过生成的串中带“-”
    可以用guid
    --------------------------------------------------------------------
    Quietly through .....
      

  4.   

    麻烦高人指点UUID.randomUUID().toString(),这个怎么用,我怎么编译不过去呢
      

  5.   

    TreeSet can do it...generate a string at random, then add it to TreeSet. At last, print TreeSet. Because TreeSet contains elements without duplicated.
      

  6.   

    /*
     * Created on Sep 1,2008
     * 
     * Copyright by cuckoo
     */
    package guid;import java.util.UUID;/**
     * 
     * @author cuckoo
     * @time 17:40
     */
    public class GUID { public static void main(String args[]){
    String uuid = UUID.randomUUID().toString();
    System.out.println("---uuid "+uuid);
    }
    }
      

  7.   

    用UUID得到的字符串的确带'-'  但是我们可以把是可以把它去掉的,然后再去用:
             String uu = UUID.randomUUID().toString();
            String[] uus= uuid.split("-");
            String str="";
            for(int i=0;i<uus.length;i++){
             str+=uuids[i];
            }
            System.out.println(str);我想请问搂主你用Java生成不重复的随机字符串干什么用我也比较感兴趣?