Exemplo n.º 1
0
 /// <summary>
 /// 返回一个小于所指定最大值的非负随机数。
 /// </summary>
 /// <param name="maxValue">要生成的随机数的上限(随机数不能取该上限值)。
 /// <paramref name="maxValue"/> 必须大于或等于零。</param>
 /// <returns>大于等于零且小于 <paramref name="maxValue"/> 的 <c>64</c> 位带符号整数,
 /// 即:返回值的范围通常包括零但不包括 <paramref name="maxValue"/>。
 /// 不过,如果 <paramref name="maxValue"/> 等于零,则返回 <paramref name="maxValue"/>。
 /// </returns>
 /// <exception cref="System.ArgumentOutOfRangeException">
 /// <paramref name="maxValue"/> 小于零。</exception>
 public static long NextInt64(long maxValue)
 {
     if (maxValue < 0)
     {
         throw CommonExceptions.ArgumentMustBePositive("maxValue", maxValue);
     }
     return((long)(random.NextDouble() * maxValue));
 }
Exemplo n.º 2
0
 /// <summary>
 /// 使用比较时要使用的精度,初始化 <see cref="DoubleComparer"/> 类的新实例。
 /// </summary>
 /// <param name="epsilon">比较时使用的精度。</param>
 public DoubleComparer(double epsilon)
 {
     if (epsilon <= 0)
     {
         throw CommonExceptions.ArgumentMustBePositive("epsilon", epsilon);
     }
     this.epsilon = epsilon;
 }
Exemplo n.º 3
0
 /// <summary>
 /// 使用比较时要使用的精度,初始化 <see cref="FloatComparer"/> 类的新实例。
 /// </summary>
 /// <param name="epsilon">比较时使用的精度。</param>
 public FloatComparer(float epsilon)
 {
     if (epsilon <= 0)
     {
         throw CommonExceptions.ArgumentMustBePositive("epsilon", epsilon);
     }
     this.epsilon = epsilon;
 }
Exemplo n.º 4
0
 /// <summary>
 /// 返回一个小于所指定最大值的非负随机数。
 /// </summary>
 /// <param name="maxValue">要生成的随机数的上限(随机数不能取该上限值)。
 /// <paramref name="maxValue"/> 必须大于或等于零。</param>
 /// <returns>大于等于零且小于 <paramref name="maxValue"/> 的 <c>64</c> 位有符号整数,
 /// 即:返回值的范围通常包括零但不包括 <paramref name="maxValue"/>。
 /// 不过,如果 <paramref name="maxValue"/> 等于零,则返回 <paramref name="maxValue"/>。
 /// </returns>
 /// <exception cref="ArgumentOutOfRangeException"><paramref name="maxValue"/> 小于零。</exception>
 public static long NextInt64(long maxValue)
 {
     if (maxValue < 0)
     {
         throw CommonExceptions.ArgumentMustBePositive("maxValue", maxValue);
     }
     Contract.Ensures(Contract.Result <long>() >= 0L && Contract.Result <long>() <= maxValue);
     return((long)(Random.NextDouble() * maxValue));
 }
Exemplo n.º 5
0
 /// <summary>
 /// 使用比较时要使用的精度,初始化 <see cref="FloatComparer"/> 类的新实例。
 /// </summary>
 /// <param name="epsilon">比较时使用的精度。</param>
 /// <exception cref="ArgumentOutOfRangeException"><paramref name="epsilon"/> 小于 <c>0</c>。</exception>
 public FloatComparer(float epsilon)
 {
     if (epsilon <= 0)
     {
         throw CommonExceptions.ArgumentMustBePositive(nameof(epsilon), epsilon);
     }
     Contract.EndContractBlock();
     this.epsilon = epsilon;
 }
Exemplo n.º 6
0
 /// <summary>
 /// 使用比较时要使用的精度,初始化 <see cref="DoubleComparer"/> 类的新实例。
 /// </summary>
 /// <param name="epsilon">比较时使用的精度。</param>
 /// <exception cref="ArgumentOutOfRangeException"><paramref name="epsilon"/> 小于 <c>0</c>。</exception>
 public DoubleComparer(double epsilon)
 {
     if (epsilon <= 0)
     {
         throw CommonExceptions.ArgumentMustBePositive("epsilon", epsilon);
     }
     Contract.EndContractBlock();
     this.epsilon = epsilon;
 }