Mysql
 sql >> Base de données >  >> RDS >> Mysql

nombres aléatoires en java

La classe java.util.Random peut générer des nombres pseudo-aléatoires ayant une distribution raisonnablement uniforme. Etant donné une List de votre type de service :

List<String> services = new ArrayList<String>(
    Arrays.asList("COMPUTER", "DATA", "PRINTER"));

il est facile d'en sélectionner un au hasard :

String s = services.get(rnd.nextInt(services.size()));

De même, l'une d'une liste de valeurs de rétroaction peut être choisie :

List<String> feedbacks = new ArrayList<String>(
    Arrays.asList("1", "0", "-1"));
String s = feedbacks.get(rnd.nextInt(feedbacks.size()));

Un expédient simple pour obtenir une distribution différente consiste à "empiler le paquet". Par exemple,

Arrays.asList("1", "1", "1", "0", "0", "-1"));

produirait 1, 0 et -1 avec probabilité /2 , /3 , et /6 , respectivement. Vous pouvez organiser des partitions plus élaborées en utilisant nextGaussian() et un intervalle de confiance .

Cette approche ne doit être utilisée que pour générer des données de test.

Addendum :Le guide mathématique d'Apache Commons inclut un chapitre sur la Génération de données , avec des liens informatifs et de la documentation concernant d'autres distributions de probabilité.