我要把随机生成的数字保存起来,要求不能有重复的数字(如果重复则不保存).
如果每增加一个数字都要用循环检查之前的数字的话,这个方法不好,现在想找更好的方法.谢谢

解决方案 »

  1.   

    将随机生成的数字保存到一个Map对象的键中
      

  2.   

    放入到一个Set对象中,如HashSet
      

  3.   

    to emin_lee 我是临时保存的,用数组或者集合有什么好的方法防止重复??
    to LexChen:谢谢,我找一下Set对象是否有这个功能.
    还有Map对象 ...
      

  4.   

    Hashtable hashtable=new Hashtable();
    for(int i=0;i<100;i++){
    double num=Math.random();
    if(hashtable.get(""+num)==null){
    hashtable.put(""+num,""+num);
    System.out.println("第"+(i+1)+"个数字无重复!");
    }else{
    System.out.println("第"+(i+1)+"个数字重复!");
    }
    }
      

  5.   

    不过,double num=Math.random();
    不太好吧,double型??
      

  6.   

    //用set不允许重复值,有重复值会覆盖掉
    HashSet set=new HashSet();

    for(int i=0;i<100;i++){
    double num=Math.random();
    set.add(""+num);
    }
      

  7.   

    nod,所以说用Set就行了,不用自己去考虑那么多的东西,呵呵
      

  8.   

    谢谢lip009(深蓝忧郁),先试一下HashSet .