C#随机数

来源:互联网 发布:层次数据库模型举例 编辑:程序博客网 时间:2024/05/21 22:44
        /// <summary>
        /// 产生随机数(有重复)
        /// </summary>
        /// <returns></returns>
        public ActionResult RandomNum1()
        {
            Random result = new Random();
            HashSet<int> arr = new HashSet<int>();
            for (int i = 0; i < 5; i++)
            {
                int value= result.Next(0, 10);
                arr.Add(value);
            }
            return Json(arr);
        }
        /// <summary>
        /// 产生随机数(不重复)
        /// 但是可能取不到规定数量的随机数
        /// </summary>
        /// <returns></returns>
        public ActionResult RandomNum2()
        {
            Random result = new Random();
            List<int> arr = new List<int>();
            for (int i = 0; i < 5; i++)
            {
                int value = result.Next(0, 10);
                if (!arr.Contains(value))
                    arr.Add(value);
            }
            return Json(arr);
        }
        /// <summary>
        /// 产生随机数(不重复)
        /// </summary>
        /// <returns></returns>
        public ActionResult RandomNum3()
        {
            Random result = new Random();
            List<int> arr = new List<int>();
            List<int> allNum = new List<int>();//存放0-10的所有值
            for (int i = 0; i < 10; i++)
                allNum.Add(i);
            for (int i = 0; i < 5; i++)
            {
                int index = result.Next(0, allNum.Count);//获取随机数
                int value = allNum[index];//将随机数作为索引值去获取allNum中的值
                arr.Add(value);
                allNum.RemoveAt(index);//移除该值,保证不重复
            }
            return Json(arr);
        }
原创粉丝点击