如何使用Dart生成随机数?


当前回答

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

你可以用它来生成随机数

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

其他回答

使用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';

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)
}

使用'dart:math'库中的类Random()。

import 'dart:math';

void main() {
  int max = 10;
  int RandomNumber = Random().nextInt(max);
  print(RandomNumber);
}

这将生成并打印一个从0到9的随机数。

下面是生成随机数列表的代码片段

import 'dart:math';

main() {
  var rng = new Random();
  var l = new List.generate(12, (_) => rng.nextInt(100));
}

这将生成一个包含从0到99(包括)的12个整数的列表。

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

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

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