Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用C#,如何将变量设置为范围内的随机数?_C#_Class_Variables_Random_Properties - Fatal编程技术网

使用C#,如何将变量设置为范围内的随机数?

使用C#,如何将变量设置为范围内的随机数?,c#,class,variables,random,properties,C#,Class,Variables,Random,Properties,我创建了一个名为Superhero的类,并赋予它以下属性: 字符串名称、int-Life、int-Punch、int-Kick和int-Hyper-Punch 然后在我的程序中,我创建了一个列表 static void Main(string[] args) { List<Superhero> listOfHeroes = new List<Superhero>; Superhero goodGuy = new Superhero(); goodGuy.Name = "S

我创建了一个名为Superhero的类,并赋予它以下属性: 字符串名称、int-Life、int-Punch、int-Kick和int-Hyper-Punch

然后在我的程序中,我创建了一个列表

static void Main(string[] args)
{
List<Superhero> listOfHeroes = new List<Superhero>;
Superhero goodGuy = new Superhero();
goodGuy.Name = "Super Man";
goodGuy.Life = 100;
goodGuy.Punch =????
}
static void Main(字符串[]args)
{
listOfHeroes=新列表;
超级英雄goodGuy=新超级英雄();
goodGuy.Name=“超级男人”;
好家伙,生命=100;
好家伙,潘趣=????
}
我希望能够把一系列的数字放在“?”所在的位置。我的理论是,用户可以从列表中选择一个英雄,并可以在战斗中使用他。当他选择英雄投掷一拳(或一脚或任何东西)时,一个设定范围内的随机数被分配给该属性

因此,如果这是一个基于两人回合的游戏,当使用属性punch时,将以punch的值从其他人的生命属性中移除。这是可能的还是我做得不对

伪随机是可以的


顺便说一句,我正在参加第4周的新兵训练营……如果这些都不合理,请对我大喊大叫,这样我就可以更快地学习lol。

你需要使用以下方法初始化一个随机实例:

 Random rand = new Random(DateTime.Now);
然后您可以使用:

int value = rand.Next(min, max-1)
如果您没有随机实例的全局初始化,您将始终使用相同的数字:

for (int i = 0; i < 10; i++)
{
   var t = (new Random()).Next(0, 100);
   Console.WriteLine(t);
}
for(int i=0;i<10;i++)
{
var t=(new Random()).Next(01100);
控制台写入线(t);
}

然后将返回相同的时间值

int value=Random.Next(min,max-1)
@puropoix当我输入该代码时,我会收到一条错误消息“非静态字段、方法或属性'Random.Next(int,int)'需要对象引用”,这是因为我没有创建Random的实例吗?