Hay varios métodos para obtener un elemento aleatorio de ArrayList:
- Usando Math.random()
- Uso aleatorio de ArrayList
- Usando la clase aleatoria
Método 1: Usar Math.random()
Sintaxis:
public static double random()
Retorno:
Este método devuelve un doble pseudoaleatorio mayor o igual a 0.0 y menor a 1.0.
- Math.random() genera un valor aleatorio entre 0 y 1.
- Multiplique este valor por el tamaño de ArrayList y tome solo la parte entera de este valor.
- Ahora el número que se genera después de realizar los pasos anteriores se puede tomar como índice de ArrayList.
- Use el método get() para devolver un elemento aleatorio de ArrayList usando el índice generado anteriormente.
Java
// Java program for Getting Random Elements // from ArrayList using Math.random() function import java.io.*; import java.util.ArrayList; class GFG { public static void main(String[] args) { // creating ArrayList ArrayList<Integer> my_list = new ArrayList<Integer>(); // adding elements my_list.add(10); my_list.add(80); my_list.add(30); my_list.add(70); my_list.add(5); my_list.add(90); my_list.add(19); my_list.add(25); // loop to print elements at randonm for (int i = 0; i < my_list.size(); i++) { // generating the index using Math.random() int index = (int)(Math.random() * my_list.size()); System.out.println("Random Element is :" + my_list.get(index)); } } }
Producción
Random Element is :70 Random Element is :25 Random Element is :90 Random Element is :5 Random Element is :70 Random Element is :30 Random Element is :70 Random Element is :10
Método 2: Usando ArrayList Shuffle
- El método Collections.shuffle() de Java mezcla el orden de los elementos en ArrayList.
- Ahora podemos simplemente iterar sobre ArrayList y devolver los elementos tal como están en orden aleatorio ahora.
obtiene
Java
// Java program for Getting Random Elements // from ArrayList using Collections.shuffle() import java.io.*; import java.util.*; import java.util.ArrayList; class GFG { public static void main(String[] args) { // creating ArrayList ArrayList<Integer> my_list = new ArrayList<Integer>(); // adding elements my_list.add(10); my_list.add(80); my_list.add(30); my_list.add(70); my_list.add(5); my_list.add(90); my_list.add(19); my_list.add(25); // using collections.shuffle to shuffle elements of // ArrayList Collections.shuffle(my_list); // using for each loop to print values at random System.out.println("Random values :"); for (Integer random_values : my_list) { System.out.print(random_values + " "); } } }
Producción
Random values : 19 5 25 90 10 30 80 70
Método 3: Uso de la función Clase aleatoria
- El método nextInt() de la clase Random se puede usar para generar un valor aleatorio entre 0 y el tamaño de ArrayList.
- Ahora use este número como un índice de ArrayList.
- Use el método get() para devolver un elemento aleatorio de ArrayList usando el número generado por el método nextInt().
Java
// Java program for Getting Random Elements // from ArrayList using nextInt() function import java.io.*; import java.util.ArrayList; import java.util.Random; class GFG { public static void main(String[] args) { // creating ArrayList ArrayList<Integer> my_list = new ArrayList<Integer>(); // adding elements my_list.add(10); my_list.add(80); my_list.add(30); my_list.add(70); my_list.add(5); my_list.add(90); my_list.add(19); my_list.add(25); // initializing random class Random random_method = new Random(); // loop for generation random number for (int i = 0; i < my_list.size(); i++) { // generating random index with the help of // nextInt() method int index = random_method.nextInt(my_list.size()); System.out.println("Random Element is :" + my_list.get(index)); } } }
Producción
Random Element is :5 Random Element is :10 Random Element is :19 Random Element is :5 Random Element is :30 Random Element is :70 Random Element is :25 Random Element is :90
Publicación traducida automáticamente
Artículo escrito por uchiha1101 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA