如何使用Dart生成随机数?
当前回答
对我来说,最简单的方法是:
import 'dart:math';
Random rnd = new Random();
r = min + rnd.nextInt(max - min);
//where min and max should be specified.
感谢@adam-singer的解释。
其他回答
试试这个,你可以控制最小/最大值:
注意,您需要导入省道数学库。
import 'dart:math';
void main() {
int random(int min, int max) {
return min + Random().nextInt(max - min);
}
print(random(5, 20)); // Output : 19, 5, 15.. (5 -> 19, 20 is not included)
}
无法评论,因为我刚刚创建了这个帐户,但我想确保指出,@eggrobot78的解决方案是有效的,但它在dart中是独占的,所以它不包括最后一个数字。如果您将最后一行更改为“r = min + rnd.”nextInt(max - min + 1);”,那么它也应该包括最后一个数字。
解释:
max = 5;
min = 3;
Random rnd = new Random();
r = min + rnd.nextInt(max - min);
//max - min is 2
//nextInt is exclusive so nextInt will return 0 through 1
//3 is added so the line will give a number between 3 and 4
//if you add the "+ 1" then it will return a number between 3 and 5
使用dart:math中的随机类:
import 'dart:math';
main() {
var rng = Random();
for (var i = 0; i < 10; i++) {
print(rng.nextInt(100));
}
}
在撰写本文时,这段代码已经使用Dart VM和dart2js进行了测试。
下面是生成随机数列表的代码片段
import 'dart:math';
main() {
var rng = new Random();
var l = new List.generate(12, (_) => rng.nextInt(100));
}
这将生成一个包含从0到99(包括)的12个整数的列表。
一个安全的随机API刚刚添加到dart:math
new Random.secure()
飞镖:数学 Random添加了一个安全构造函数,返回加密安全的 随机发生器,从熵源提供的读取 为每个生成的随机值嵌入。
它委托给浏览器中的window.crypto.getRandomValues()和操作系统(如服务器上的urandom)
推荐文章
- 弹出时强制颤振导航器重新加载状态
- random.seed():它做什么?
- Java中生成UUID字符串的有效方法(UUID. randomuuid ().toString()不带破折号)
- 如何从字典中获得一个随机值?
- 生成1和10之间的随机数Java
- 颤振:扩展vs灵活
- 生成具有给定(数值)分布的随机数
- 错误地使用父数据小部件。扩展小部件必须放置在flex小部件中
- 在php中生成一个随机密码
- GLSL的随机/噪声函数
- 颤振给容器圆形边界
- Flutter: RenderBox没有布局
- java.util.Random和java.security. securerrandom的区别
- 颤振插件未安装错误;当运行'扑动医生'时
- 0到1之间的随机数?