gpt4 book ai didi

c# - 'maxValue' 必须大于零

转载 作者:行者123 更新时间:2023-11-30 20:17:29 24 4
gpt4 key购买 nike

我不确定这是不是一个问题,但邮件中的内容看起来不正确

我的第一次尝试:

try
{
var r = new Random();
Console.WriteLine(r.Next(-1));
}
catch (Exception e)
{
Console.WriteLine(e.GetType().ToString());
Console.WriteLine(e.Message);
}

输出:

System.ArgumentOutOfRangeException

'maxValue' must be greater than zero.

Parameter name: maxValue

第二次尝试:

try
{
var r = new Random();
Console.WriteLine(r.Next(0));
}
catch (Exception e)
{
Console.WriteLine(e.GetType().ToString());
Console.WriteLine(e.Message);
}

输出:

0

所以,问题是:为什么 0 大于零

最佳答案

如果你看一下 source code :

  /*=====================================Next=====================================
**Returns: An int [0..maxValue)
**Arguments: maxValue -- One more than the greatest legal return value.
**Exceptions: None.
==============================================================================*/
public virtual int Next(int maxValue) {
if (maxValue<0) {
throw new ArgumentOutOfRangeException("maxValue", Environment.GetResourceString("ArgumentOutOfRange_MustBePositive", "maxValue"));
}
Contract.EndContractBlock();
return (int)(Sample()*maxValue);
}

该值必须为正,零为正。

关于c# - 'maxValue' 必须大于零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44644741/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com