A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© itheima_xu 中级黑马   /  2014-1-1 16:41  /  1404 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  /// <summary>
        ///  生成不重复的随机数   
        /// </summary>
        /// <param name="as_arrNums">数组</param>
        /// <param name="as_temp">中间变量,记录数组循环遍历次数</param>
        /// <param name="as_minNum">随机数>=最小值</param>
        /// <param name="as_maxNum">随机数最大值(不能等于)</param>
        /// <param name="as_random">random 对象</param>
        /// <returns></returns>
        public int getRanNumber(int[] as_arrNums, int as_temp, int as_minNum, int as_maxNum, Random as_random)
        {
            int ls_row = 0;
            while (ls_row < as_arrNums.Length)
            { //循环遍历数组如果有重复的则重新取值
                //数组元素默认值为0 所以第1次传入的as_temp的值为0会重新取值
                if (as_temp == as_arrNums[ls_row])
                {
                    as_temp = as_random.Next(as_minNum, as_maxNum);
                    as_temp = getRanNumber(as_arrNums, as_temp, as_minNum, as_maxNum, as_random);
                }
                ls_row++;
            }
            return as_temp;
        }

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马