c# 随机数,c# 生成随机数,c# 生成区间随机数,c# 生成随机数组
创始人
2024-05-12 03:54:49
0

c# 随机数,c# 生成随机数,c# 生成区间随机数,c# 生成随机数组

小试牛刀

先看结果

生成200-700之间的5个随机数
第1的随机数是:647
第2的随机数是:219
第3的随机数是:311
第4的随机数是:210
第5的随机数是:616

 代码

Console.Write("生成200-700之间的5个随机数\n");
Random random = new Random();
for (int i = 1; i<=5; i++)
{
int res= random.Next(200, 700);
Console.Write($"第{i}的随机数是:{res}\n");
}Console.Read();

介绍

在c# 命名空间里有个工具类【System.Runtime】是专门提供生成随机数的

1

【注意】

这个方法使用前需要实例化

 

版本介绍

#region 程序集 mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
// C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\mscorlib.dll
#endregion

根据这端代码的介绍,应该是4.0以后版本才有的

方法介绍

构造方法 Random()

新实例初始化 System.Random 类,使用依赖于时间的默认种子值

【注意】

这个方法使用前需要实例化

  代码

Random random = new Random();

构造方法 Random(int Seed)

新实例初始化 System.Random 类,使用指定的种子值。

【注意】

这个方法使用前需要实例化,实例化时可以指定“种子”,(生成的最小值)

Seed:

用来计算伪随机数序列起始值的数字。 如果指定的是负数,则使用其绝对值。

  代码

Random random = new Random(1); //指定最小值为1

int Next()

返回一个非负随机整数。

返回结果:

 一个 32 位有符号的整数,它是大于或等于 0 且小于比System.Int32.MaxValue。

代码

Console.Write($"【int Next():】返回一个非负随机整数\n");
Console.Write($"{random.Next()}\n");

结果

【int Next():】返回一个非负随机整数
1778249408

int Next(int minValue, int maxValue)

返回在指定范围内的任意整数。

【参数】

minValue:返回的随机数字包含下限。(最小随机数)

maxValue:返回随机数的不含上限。 maxValue必须大于或等于minValue。(最大随机数)

【返回结果:】

32 位有符号的整数大于或等于minValue和小于maxValue; 即,返回值的范围包括minValue但不是maxValue。 如果minValue等于maxValue,minValue返回。

代码

Console.Write($"【int Next(int minValue, int maxValue)】返回在指定范围内的任意整数\n");
Console.Write($"返回最小值为1,最大值为5的随机数:{random.Next(1,5)}\n");

结果

【int Next(int minValue, int maxValue)】返回在指定范围内的任意整数
返回最小值为1,最大值为5的随机数:3

int Next(int maxValue)

返回一个小于所指定最大值的非负随机整数。

【参数】

maxValue:要生成的随机数字含上限。 maxValue必须大于或等于 0。

【返回结果】

 一个 32 位有符号的整数,它是大于或等于 0,且小于比maxValue; 返回值的范围,即通常包括 0 但不是maxValue。 但是,如果maxValue等于 0,maxValue返回。

代码

Console.Write($"【int int Next(int maxValue)】返回一个小于所指定最大值的非负随机整数。\n");
Console.Write($"返回最大值为5的随机数:{random.Next(5)}\n");

结果

【int int Next(int maxValue)】返回一个小于所指定最大值的非负随机整数。
返回最大值为5的随机数:0

NextBytes(byte[] buffer)

 用随机数填充指定字节数组的元素。

【参数】

buffer:要包含随机数字的字节数组。

代码

Console.Write($"【int NextBytes(byte[] buffer)】用随机数填充指定字节数组的元素。\n");
byte[] b = new byte[10];
random.NextBytes(b);
StringBuilder sb = new StringBuilder();
sb.Append("[");
foreach (var item in b)
{
sb.Append($"{item},");
} 
sb.Append("]");
Console.Write($"10个长度的数据:{sb.ToString()}\n"); 

结果

【int NextBytes(byte[] buffer)】用随机数填充指定字节数组的元素。
10个长度的数据:[98,77,235,121,246,29,75,13,15,95,]

double NextDouble()

返回一个大于或等于 0.0 且小于 1.0 的随机浮点数。

【返回结果】

大于或等于 0.0 且小于 1.0 的双精度浮点数。

代码

Console.Write($"【double NextDouble()】返回一个大于或等于 0.0 且小于 1.0 的随机浮点数。\n");
Console.Write($"结果:{random.NextDouble()}\n"); 

结果

【double NextDouble()】返回一个大于或等于 0.0 且小于 1.0 的随机浮点数。
结果:0.842990528253368


完整测试代码

Console.Write("生成200-700之间的5个随机数\n");
Random random = new Random();
for (int i = 1; i<=5; i++)
{int res= random.Next(200, 700);Console.Write($"第{i}的随机数是:{res}\n");
}Console.Write($"【int Next():】返回一个非负随机整数\n");
Console.Write($"{random.Next()}\n");Console.Write($"【int Next(int minValue, int maxValue)】返回在指定范围内的任意整数\n");
Console.Write($"返回最小值为1,最大值为5的随机数:{random.Next(1,5)}\n");Console.Write($"【int int Next(int maxValue)】返回一个小于所指定最大值的非负随机整数。\n");
Console.Write($"返回最大值为5的随机数:{random.Next(5)}\n");Console.Write($"【int NextBytes(byte[] buffer)】用随机数填充指定字节数组的元素。\n");
byte[] b = new byte[10];
random.NextBytes(b);
StringBuilder sb = new StringBuilder();
sb.Append("[");
foreach (var item in b)
{sb.Append($"{item},");
} 
sb.Append("]");
Console.Write($"10个长度的数据:{sb.ToString()}\n"); Console.Write($"【double NextDouble()】返回一个大于或等于 0.0 且小于 1.0 的随机浮点数。\n");
Console.Write($"结果:{random.NextDouble()}\n"); Console.Read();

结果

生成200-700之间的5个随机数
第1的随机数是:679
第2的随机数是:351
第3的随机数是:391
第4的随机数是:390
第5的随机数是:677
【int Next():】返回一个非负随机整数
943812418
【int Next(int minValue, int maxValue)】返回在指定范围内的任意整数
返回最小值为1,最大值为5的随机数:3
【int int Next(int maxValue)】返回一个小于所指定最大值的非负随机整数。
返回最大值为5的随机数:1
【int NextBytes(byte[] buffer)】用随机数填充指定字节数组的元素。
10个长度的数据:[98,77,235,121,246,29,75,13,15,95,]
【double NextDouble()】返回一个大于或等于 0.0 且小于 1.0 的随机浮点数。
结果:0.842990528253368

 

相关内容

热门资讯

武汉摩尔影城安卓系统APP,便... 你有没有想过,一部手机就能带你走进电影的世界,享受大屏幕带来的震撼?今天,就让我带你详细了解武汉摩尔...
联想刷安卓p系统,畅享智能新体... 你有没有发现,最近联想的安卓P系统刷机热潮可是席卷了整个互联网圈呢!这不,我就迫不及待地来和你聊聊这...
mac从安卓系统改成双系统,双... 你有没有想过,你的Mac电脑从安卓系统改成双系统后,生活会有哪些翻天覆地的变化呢?想象一边是流畅的苹...
kindke安卓系统激活码,激... 亲爱的读者,你是否在寻找一款能够让你手机焕然一新的操作系统?如果你是安卓用户,那么今天我要给你带来一...
萤石云监控安卓系统,安卓系统下... 你有没有想过,家里的安全可以随时随地掌握在手中?现在,有了萤石云监控安卓系统,这不再是梦想啦!想象无...
手机安卓系统会不会爆炸,系统升... 手机安卓系统会不会爆炸——一场关于安全的探讨在当今这个数字化的世界里,手机已经成为我们生活中不可或缺...
安卓系统双清详图解,恢复出厂设... 你有没有遇到过手机卡顿、运行缓慢的问题?别急,今天就来给你详细解析一下安卓系统的“双清”操作,让你的...
召唤抽奖系统安卓直装,轻松体验... 你知道吗?现在市面上有一种特别火的玩意儿,那就是召唤抽奖系统安卓直装。是不是听起来就让人心动不已?没...
系统工具箱安卓2.3,深度解析... 你有没有发现,手机里的那些小工具,有时候就像是个神奇的百宝箱呢?今天,就让我带你一探究竟,看看安卓2...
华硕平板安卓刷机系统,解锁性能... 亲爱的数码爱好者们,你是否曾为你的华硕平板安卓系统感到厌倦,想要给它来一次焕然一新的体验呢?那就跟着...
鸿蒙系统与安卓怎么区别,差异解... 你有没有发现,最近手机圈子里有个大热门,那就是鸿蒙系统和安卓系统的区别。这两位“系统大侠”各有各的绝...
红帽系统怎么刷回安卓,红帽系统... 你是不是也和我一样,对红帽系统刷回安卓充满了好奇?别急,今天就来给你详细揭秘这个过程,让你轻松上手,...
ios安卓联想三系统,全面解析... 你有没有发现,现在的手机市场真是热闹非凡呢!各种操作系统轮番登场,让人眼花缭乱。今天,就让我带你来聊...
安卓调用系统相机并存盘,And... 你有没有想过,手机里的照片和视频,是怎么被我们随手拍下,又神奇地存到手机里的呢?今天,就让我带你一探...
安卓4.0原生系统下,引领智能... 你有没有发现,安卓4.0原生系统下,手机的使用体验简直就像打开了新世界的大门?今天,就让我带你一起探...
安卓c13系统,创新功能与性能... 你知道吗?最近安卓系统又来了一次大更新,那就是安卓C13系统。这可不是一个小打小闹的更新,而是带来了...
鸿蒙3.0脱离安卓系统,开启全... 你知道吗?最近科技圈可是炸开了锅,因为华为的新操作系统鸿蒙3.0横空出世,竟然宣布要脱离安卓系统,这...
安卓怎么应对苹果系统,安卓系统... 你知道吗?在智能手机的世界里,安卓和苹果就像是一对相爱相杀的恋人。安卓系统,这位多才多艺的“大众情人...
安卓系统如何开橱窗教程,安卓系... 你有没有想过,你的安卓手机里也能开个橱窗,展示那些你心爱的宝贝?没错,就是那种可以随时翻看、随时分享...
安卓系统软件APK,深入探究安... 你有没有发现,手机里的那些好玩的应用,其实都是靠一个小小的文件来“住”进去的?没错,就是安卓系统里的...