假如我要一次获取5个0-10之间的随机数,但是这5个数都互不相同,用java该怎么实现?
高手赐教了...

解决方案 »

  1.   

    int number=(int)(Math.random()*10)
      

  2.   

    上面是生成单个随便数一组用for
      

  3.   

    do{
       for(int i = 5; i < 10; i++){
           num[i] = (int)(Math.random()*10+1);
    }while(num[0] == num[1] || num[0] == num[2] || num[0] == num[3] || num[0] == num[4]
      

  4.   

    do{ 
      for(int i = 5; i < 10; i++){ 
          num[i] = (int)(Math.random()*10); 
    }while(num[0] == num[1] || num[0] == num[2] || num[0] == num[3] || num[0] == num[4]
                            || num[1] == num[2] || num[1] == num[3] || num[1] == num[4]
                                                || num[2] == num[3] || num[2] == num[4]
                                                                    || num[3] == num[4]}
      

  5.   

    ArrayList list = new ArrayList();
            int n = 10;
            Random rand = new Random();
            boolean[] bool = new boolean[n];
            
            int num =0;
            
            for (int i = 0; i<5; i++){
                do{
                    //如果产生的数相同继续循环
                    num = rand.nextInt(n);    
                 
                }while(bool[num]);
                
                bool[num] =true;
                
                list.add(num);
            }           
            System.out.println (list); 
    //开始上面看错了! Sorry
      

  6.   

    Set set=new HashSet();

    while(set.size()<5){
    set.add(Math.random()*10);
    }
      

  7.   

    Set set = new HashSet(); while (set.size() < 5) {
    set.add(Math.floor(Math.random() * 10));
    }
      

  8.   


    package com.take.demo;import java.util.* ;
    public class APIDemo05
    {
    public static void main(String args[]) throws Exception
    {
    //Random类,此类的实例用于生成伪随机数流
    Random r = new Random() ;
    for(int i=0;i<5;i++)
    {
    //打印r.nextInt(10)返回的一个伪随机数,范围在10内
    System.out.println(r.nextInt(10)) ;
    }
    }
    };
      

  9.   

    public class Test{
        public static void main(String[] args){
            int[] arr = new int[5];
            for(int i=0;i<arr.length;i++){
                arr[i] = (int)(Math.random()*10+1);
                for(int j=0;j<i;j++){
                    if(arr[i]==arr[j]){
                        i--;
                        contiune;
                    }
                }
            }
            for(int i=0;i<arr.length;i++){
                System.out.print(arr[i]+" ");
            }
        }
    }
    刚学的JAVA,只会用笨方法,API中有现成的获得指定范围的随机数的类,忘记啦
      

  10.   


    public void generateNumber() {
    String tempNumber = "";
    Random random = new Random();
    while (tempNumber.length() < 4) {
    String i = new Integer(random.nextInt(10)).toString();
    if (tempNumber.indexOf(i) == -1) {
    tempNumber = tempNumber + i;
    }
    }
    number = tempNumber;
    }