代码改变世界

.net(c#)随机数的最简单应用

2011-04-18 22:09  穆容  阅读(473)  评论(0编辑  收藏  举报

今天应小舅子的邀请,写个摇奖程序,要求出一组x~x的随机数

在原来的程序里,还真没遇到这样取法的随机数,故而先按照原来的写法写了

但是发现取出的随机数都是一样的,遂上网找辙

网上的高手都是用复杂的算法来计算的,太不适合我了

细细想来,随机数计算的根源,就是随机种子数,我原来用的是时间的毫秒,但是时间太快的话,就会导致取出的数字一样

如果加入调用次数作为参数呢:

public static class GetInt
{
    public static int c;
    public static int GetOne()
    {
        c++;
        Random ran = new Random(DateTime.Now.Millisecond + c);
        return ran.Next(0, GetArg.GetMax());
    }
}
测试结果,反正我还没遇到一次重复的呢