如何使用Dart生成随机数?


当前回答

它为我工作new Random().nextInt(100);// MAX = number

它会给出0到99的随机数

Eample::

import 'dart:math';
int MAX = 100;
print(new Random().nextInt(MAX));`

其他回答

使用dart:math中的随机类:

import 'dart:math';

main() {
  var rng = Random();
  for (var i = 0; i < 10; i++) {
    print(rng.nextInt(100));
  }
}

在撰写本文时,这段代码已经使用Dart VM和dart2js进行了测试。

如果你需要加密安全的随机数(例如加密),并且你在浏览器中,你可以使用DOM加密API:

int random() {
  final ary = new Int32Array(1);
  window.crypto.getRandomValues(ary);
  return ary[0];
}

这适用于Dartium、Chrome和Firefox,但可能不适用于其他浏览器,因为这是一个实验性的API。

您可以简单地用这种方式生成 有一个名为Random()的类;

你可以用它来生成随机数

Random objectname = Random();
int number = objectname.nextInt(100);
// it will generate random number within 100.

对我来说,最简单的方法是:

import 'dart:math';
Random rnd = new Random();
r = min + rnd.nextInt(max - min);
//where min and max should be specified.

感谢@adam-singer的解释。

一个安全的随机API刚刚添加到dart:math

new Random.secure()

飞镖:数学 Random添加了一个安全构造函数,返回加密安全的 随机发生器,从熵源提供的读取 为每个生成的随机值嵌入。

它委托给浏览器中的window.crypto.getRandomValues()和操作系统(如服务器上的urandom)