Fork me on GitHub

关于随机数的产生-动手动脑1

package 生成随机数;

public class RandomTest 
{
     public static void main(String[] args)
     {
            int[] result = RandomTest.randomNumber(1,1000,900);
            for(int k =0 ;k<result.length;k++)
            {
                System.out.println(result[k]);
            }
     }

        /**
        * 功能:产生1-1000中的900个不重复的随机数
        * 
        * min:产生随机数的其实位置
        * mab:产生随机数的最大位置
        * n: 所要产生多少个随机数
        *
        */
        public static int[] randomNumber(int min,int max,int n){

            //判断是否已经达到索要输出随机数的个数
            if(n>(max-min+1) || max <min){
                return null;
            }

            int[] result = new int[n]; //用于存放结果的数组

            int count = 0;
            while(count <n){
                int num = (int)(Math.random()*(max-min))+min;
                boolean flag = true;
                for(int j=0;j<n;j++){
                     if(num == result[j]){
                         flag = false;
                         break;
                     }
                 }
                 if(flag){
                     result[count] = num;
                     count++;
                 }
             }
             return result;
         } 
    
}

截图:

实验感悟:想要产生1000个随机数,首先要了解random这个随机函数的使用方法,同时需要定义一个计算产生随机数个数的函数,看是否已经生成足够多的随机数。在主函数中只需要定义有一个for循环,引用random函数就可以实现随机生成整数。

 

posted @ 2018-10-14 16:44  今天123  阅读(167)  评论(0编辑  收藏  举报
1