随机数Random简记
来源:互联网 发布:装修公司 施工队 知乎 编辑:程序博客网 时间:2024/06/06 07:40
Random在处理随机数时最常用的,也是最简单的方法,尽管它并不完美,但了解它是非常必须的。所以自己简单总结了一下关于C#中Random的使用。
首先看看Random这个类到底封装了些什么
1.Next():这个方法是我们最常用的,它有三个重载,从对应的参数名我们也就能够看出其作用。第一个是以int类型区间为范围的产生随机数范围,第二个则是设置其最大范围区间,而第三个则是控制最大和最小区间。(注意:参数范围必须是int类型范围,否则会报错)
2.NextBytes(): 用随机数填充指定字节数组的元素,看例子
static void Main(string[] args) { Random ra = new Random(); byte[] buffer = new byte[5]; ra.NextBytes(buffer); for (int i = 0; i < buffer.Length; i++) { Console.WriteLine(string.Format("buffer[{0}]={1}",i, buffer[i])); } Console.Read(); }
得到结果
3.NextBytes():返回一个介于 0.0 和 1.0 之间的随机数,这个跟js的random就类似了
4.Sample():这个方法我想很多人都不知道,其实我以前也没在意。看到它是protected就知道不是给我们用的,我好奇去反编译看了下,其实这个方法就是给上面.NextBytes()调用的。上图一看就知道。
以上就是Random的核心方法,使用起来也比较简单。其实所有的方法最终都是调用上图中InternalSampe方法去处理的,下面我就把那个方法贴出来让小伙伴们自己看下,其实逻辑不复杂。
既然说到随机数,这边也顺带提一下js中的Math.random()方法,Math.random() 方法可返回介于 0 ~ 1 之间的一个随机数,其实与C#的NextBytes()类似,如果需要将其转换成整型或浮点型则需要自己去处理,下面就是将Math.random()产生的随机数转换为整型的例子
<body> <form> <input id="txtrandom" name="txtrandom" type="text" /><br /> <input id="txtbase" name="txtbase" type="text" /><br /> <input type="button" name="btncreate" value="产生随机数" onclick="createrandom();" /> </form> <script type="text/javascript"> function createrandom() { var maxval = document.getElementById("txtbase").value; var num = Math.random() * maxval; num = parseInt(num, 10); document.getElementById("txtrandom").value = num; } </script></body>
0 0
- 随机数Random简记
- Random 随机数
- Random 随机数
- 随机数random()
- random随机数
- 随机数Random
- Random随机数
- random随机数
- Random随机数
- Random函数创建随机数
- 理解Math.random()随机数
- random生成随机数
- java中的随机数Random
- java Random随机数
- C#Random 随机数
- android-Random随机数
- java中的随机数Random
- Random随机数总结
- iOS开发系列--视图切换
- lsmod modinfo ....
- 【ES6学习】— (7)Set、Map数据结构与Iterator遍历器
- 【Redis缓存机制】1.Redis介绍和使用场景
- 排列组合,递推,记忆化搜索(葛伦堡博物馆,LA 4123)
- 随机数Random简记
- Linux vmstat命令实战详解
- FMDB的增删改查
- 百度2016校园招聘之算法编程题解析
- java--本地线程
- Unreal Engine 4添加自定义Settings到项目设置
- UIScrollView
- 习惯centos 7的服务管理
- Java13种核心技术