C# Random
程序员文章站
2023-11-08 20:49:28
一、简介 在Random类用于创建随机数。(当然是伪随机的。) 二、Random用法 例: 三、方法详细说明 Random 类中提供的 Next、NextBytes 以及 NextDouble 方法可以生成整数类型、byte 数组类型以及双精度浮点型的随机数,详细说明如下表所示。 Next():每次 ......
一、简介
在random
类用于创建随机数。(当然是伪随机的。)
二、random用法
例:
random rnd = new random();
int month = rnd.next(1, 13); // 创建一个数字是1~12的之间的
int dice = rnd.next(1, 7); // 创建一个数字是1~6之间的
int card = rnd.next(52); // 创建一个数字是0~51之间的
三、方法详细说明
random 类中提供的 next、nextbytes 以及 nextdouble 方法可以生成整数类型、byte 数组类型以及双精度浮点型的随机数,详细说明如下表所示。
- next():每次产生一个不同的随机正整数
- next(int max value):产生一个比max value 小的整数
- next(int min value,int max value):产生一个 minvalue~maxvalue 的正整数,但不包含 maxvalue
- nextdouble():产生一个0.0~1.0的浮点数
- nextbytes(byte[] buffer):用随机数填充指定字节数的数组
四、random方法的使用
【实例】分别使用 next、nextdouble 以及 nextbytes 方法生成随机数。
class program
{
static void main(string[] args)
{
//分别使用net、netdouble已经nextbyets方法生成随机数
random rd = new random();
int numberone = rd.next(0, 10);
console.writeline("产生一个10以内的数:{0}",numberone);
//浮点数
double numbertwo = rd.nextdouble();
console.writeline("产生一个0到1之间浮点数:{0}",numbertwo);
//数组
byte[] b = new byte[5];
rd.nextbytes(b);
console.writeline("产生的byte类型值为:");
foreach (byte i in b)
{
console.write(i + " ");
}
console.writeline();
console.readkey();
}
}
输出结果,如图所示:
【实例】输入名字随机显示这个人上辈子是什么样的人
class program
{
static void main(string[] args)
{ //随机数
random rd = new random();
while (true)
{
int number = rd.next(1, 6);
console.writeline("请输入你的名字");
string name = console.readline();
if (name=="")
{
console.writeline("名字不能为空,请重新输入你的名字");
name = console.readline();
}
switch (number)
{
case 1:
console.writeline("{0}的上辈子是皇帝", name);
break;
case 2:
console.writeline("{0}的上辈子是皇后", name);
break;
case 3:
console.writeline("{0}的上辈子是贵妃", name);
break;
case 4:
console.writeline("{0}的上辈子是秀才", name);
break;
case 5:
console.writeline("{0}的上辈子是驸马", name);
break;
}
console.readkey();
}
}
}
输出结果,如图所示: