单步理解:
rnd.NextDouble() :NextDouble()是rnd实例的一个方法,它将返回一个介与0.0和1.0之间的随即数;
rnd.NextDouble() * (bigNum - smallNum):做乘积,返回的Double类型;
(long)进行类型强制转换,返回的是长整型;
======================================================
这么讲有没明白一点.

解决方案 »

  1.   

    看一下Random()函数的用法,翻阅一下msdn
      

  2.   

    (1)rnd.NextDouble() 得到的是一个0~1之间的数字。
    (2)乘上(bigNum - smallNum)就是扩大了这么多倍,也就是介于0~(bigNum - smallNum)之间了。
    (3)(long)是转换为了0~(bigNum - smallNum)之间的整数。
    (4)加上smallNum就变成了smallNum~bigNum之间的整数。不过这个算法有很大问题,Random rnd=new Random(); 需要一个种子,否则每次调用得到的数都一样,不是随机数。