Maison >Java >javaDidacticiel >Sélectionnez au hasard des éléments dans la liste en Java

Sélectionnez au hasard des éléments dans la liste en Java

王林
王林avant
2023-09-06 20:33:111493parcourir

Sélectionnez au hasard des éléments dans la liste en Java

List est une sous-interface de l'interface Java Collection. Il s'agit d'une structure linéaire où chaque élément est stocké et accessible de manière séquentielle. Afin d'utiliser les fonctionnalités de list, nous utilisons les classes ArrayList et LinkedList qui implémentent l'interface de liste. Dans cet article, nous allons créer une ArrayList et essayer de sélectionner aléatoirement des éléments dans la liste.

Programme pour sélectionner aléatoirement des éléments dans une liste en Java

Catégories aléatoires

Nous créons des objets de cette classe pour générer des nombres pseudo-aléatoires. Nous allons personnaliser cet objet et appliquer notre propre logique pour sélectionner n'importe quel élément aléatoire dans la liste.

Grammaire

Random nameOfObject = new Random();

Exemple 1

se traduit par :

Exemple 1

L'exemple suivant illustre comment utiliser un objet de classe « Random » pour sélectionner un seul élément dans une liste spécifiée.

Méthode

  • Créez une ArrayList et stockez-y certains éléments en utilisant la méthode 'add()'.

  • Définissez un objet de classe 'Random'.

  • L'objet vérifiera toute la liste et sélectionnera un élément à l'aide de la méthode 'nextInt()'. Ensuite, en utilisant la méthode 'get()', nous extrairons l'élément et le stockerons dans une variable entière.

Exemple

import java.util.*;
public class Randomly {
   public static void main(String[] args) {
     // Creating arraylist 
     ArrayList<Integer> araylist = new ArrayList<Integer>();
     // Adding elements in arraylist
     araylist.add(8);
     araylist.add(5);
     araylist.add(2);
     araylist.add(9);
     araylist.add(4);
     araylist.add(7);
     System.out.println("Elements of the list : ");
     // loop to iterate through elements
     for(int i = 0; i < araylist.size(); i++ ) {
       // to print the elements in the list
       System.out.println(araylist.get(i)); 
     }
     Random rndm = new Random(); 
     // creating object
     int rndmElem = araylist.get(rndm.nextInt(araylist.size()));
     System.out.println("Selecting a random element from the list : " + rndmElem);
   }
}

Sortie

Elements of the list : 
8
5
2
9
4
7
Selecting a random element from the list : 8

Exemple 2

Les objets de classe "Aléatoire" peuvent sélectionner deux fois un élément dans une liste. Cet exemple montre comment sélectionner plusieurs éléments dans une liste.

Méthode

  • Créez une ArrayList et stockez-y certains éléments en utilisant la méthode 'add()'.

  • Définissez un objet de classe 'Random'.

  • Maintenant, déclarez une variable entière appelée 'noOfrndmElem' qui stockera le nombre d'éléments à sélectionner.

  • Créez une boucle for qui s'exécutera jusqu'à « noOfrndmElem » et sélectionnez l'élément.

import java.util.*;
public class Randomly {
   public static void main(String[] args) {
      // Creating arraylist 
      ArrayList<Integer> araylist = new ArrayList<Integer>();
      // Adding elements in arraylist
      araylist.add(8);
      araylist.add(5);
      araylist.add(2);
      araylist.add(9);
      araylist.add(4);
      araylist.add(7);
      System.out.println("Elements of the list : ");
      // loop to iterate through elements
      for(int i = 0; i < araylist.size(); i++ ) {
         // to print the elements in the list
         System.out.println(araylist.get(i)); 
      }
      Random rndm = new Random();
      int noOfrndmElem = 2;
      System.out.println("Selecting two elements randomly from the list : ");
      for (int i = 0; i < noOfrndmElem; i++) {
         int rndmIndx = rndm.nextInt(araylist.size());
         Integer rndmElem = araylist.get(rndmIndx);
         System.out.print(rndmElem + " ");
      }
   }
}

Sortie

Elements of the list : 
8
5
2
9
4
7
Selecting two elements randomly from the list : 
8 2 
La traduction chinoise de

Exemple 3

est :

Exemple 3

Plus tôt, nous avons expliqué qu'un objet de classe « Random » pouvait sélectionner deux fois le même élément dans une liste. Cet exemple montre comment nous pouvons éviter cette situation.

Méthode

Dans le même code, nous avons créé une boucle for qui s'exécutera jusqu'à 'noOfrndmElem' et sélectionnera l'élément. Une fois sélectionné, il supprimera l'élément de la liste en utilisant la méthode intégrée 'remove()'. Nous accédons et supprimons des éléments via index.

import java.util.*;
public class Randomly {
   public static void main(String[] args) {
      // Creating arraylist 
      ArrayList<Integer> araylist = new ArrayList<Integer>();
      // Adding elements in arraylist
      araylist.add(8);
      araylist.add(5);
      araylist.add(2);
      araylist.add(9);
      araylist.add(4);
      araylist.add(7);
      System.out.println("Elements of the list : ");
      // loop to iterate through elements
      for(int i = 0; i < araylist.size(); i++ ) {
         // to print the elements in the list
         System.out.println(araylist.get(i)); 
      }
      Random rndm = new Random();
      int noOfrndmElem = 2;
      System.out.println("Selecting two elements randomly from the list : ");
      for (int i = 0; i < noOfrndmElem; i++) {
         int rndmIndx = rndm.nextInt(araylist.size());
         Integer rndmElem = araylist.get(rndmIndx);
         System.out.print(rndmElem + " ");
         araylist.remove(rndmIndx);
      }
   }
}

Sortie

Elements of the list : 
8
5
2
9
4
7
Selecting two elements randomly from the list : 
7 2 

Conclusion

Dans cet article, nous avons discuté de certains programmes Java permettant de sélectionner aléatoirement des éléments dans une liste. Nous définissons d'abord la liste, puis définissons une classe appelée "Random" pour générer des nombres aléatoires. Nous avons défini une logique personnalisée et l'avons appliquée avec un objet de classe "Aléatoire" pour sélectionner des éléments de manière aléatoire.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer