`

Java产生不重复随机数方法

阅读更多

 

public class TestRand3 {

    static int n = 20;
    static Random rand = new Random();
    static boolean[] bool = new boolean[n];

    public static void main(String[] args) {
        for (int j=0; j<n; j++) {
            int r = proRandom();
            System.out.print(r + " ");
        }
    }

    public static int proRandom() {
        int num =0;
        for (int i = 0; i<n; i++){
            do{
                num = rand.nextInt(n);   //如果产生的数相同继续循环
            }while(bool[num]);
            bool[num] =true;
            return num;
        }

        return n+1;

    }
}

 
如有疑问或问题,请联系邮箱 lfl2011@126.com

0
1
分享到:
评论
2 楼 lfl2011 2012-05-14  
nextInt()在Random不是静态方法
1 楼 xiaoyu1985ban 2012-05-11  
建议试试Random的静态方法nextInt

相关推荐

Global site tag (gtag.js) - Google Analytics