256 votes

Comment générer des nombres aléatoires dans Dart ?

Comment générer des nombres aléatoires en utilisant Dart ?

316voto

Seth Ladd Points 13589

Utilisez Random classe de dart:math :

import 'dart:math';

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

Ce code a été testé avec la VM Dart et dart2js, au moment de la rédaction de cet article.

121voto

Samir Rahimy Points 139

Vous pouvez y parvenir via Random objet de classe random.nextInt(max) qui se trouve dans dart:math bibliothèque. Le site nextInt() exige une limite maximale. Le nombre aléatoire commence à partir de 0 et la limite maximale elle-même est exclusive.

import 'dart:math';
Random random = new Random();
int randomNumber = random.nextInt(100); // from 0 upto 99 included

Si vous voulez ajouter la limite minimale, ajoutez la limite minimale au résultat.

int randomNumber = random.nextInt(90) + 10; // from 10 upto 99 included

28voto

mehaase Points 6824

Voici un extrait permettant de générer une liste de nombres aléatoires.

import 'dart:math';

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

Cela va générer une liste de 12 entiers de 0 à 99 (inclus).

27voto

Aymen Dn Points 390

Essayez ceci, vous pouvez contrôler le min/max valeur :

NOTEZ que vous devez importer la bibliothèque mathématique de Dart.

import 'dart:math';

void main() {

  int random(min, max) {
    return min + Random().nextInt(max - min);
  }

  print(random(5, 20)); // Output : 19, 5, 15..
}

23voto

Günter Zöchbauer Points 21340

Une API aléatoire sécurisée vient d'être ajoutée à dart:math

new Random.secure()

dart:math Random a ajouté un secure qui renvoie un code de sécurité cryptographique cryptographiquement sécurisé qui lit la source d'entropie fournie par l'intégrateur pour chaque valeur aléatoire générée. pour chaque valeur aléatoire générée.

qui délègue à window.crypto.getRandomValues() dans le navigateur et au système d'exploitation (comme urandom sur le serveur)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X