-2

我正在尝试从 4 个字符串中随机选择一个字符串,并在控制台上显示该字符串。我该怎么做 ?例如,有一个问题,如果用户回答正确,那么控制台将显示我选择的字符串之一。我知道如何随机选择一个整数值,但我不知道如何随机选择一个字符串。请帮忙?

4

6 回答 6

9
import java.util.Random;
public class RandomSelect {

    public static void main (String [] args) {

         String [] arr = {"A", "B", "C", "D"};
         Random random = new Random();

         // randomly selects an index from the arr
         int select = random.nextInt(arr.length); 

         // prints out the value at the randomly selected index
         System.out.println("Random String selected: " + arr[select]); 
    }
}

使用字符:

import java.util.Random;
public class RandomSelect {

    public static void main (String [] args) {

         String text = "Hello World";
         Random random = new Random();

         // randomly selects an index from the arr
         int select = random.nextInt(text.length()); 

         // prints out the value at the randomly selected index
         System.out.println("Random char selected: " + text.charAt(select)); 
    }
}
于 2012-06-06T16:38:21.783 回答
5
  1. 把你的字符串放在一个数组中。
  2. 然后从类中获取一个在数组长度范围内的随机整数Random(查看模%运算符以了解如何执行此操作;或者,通过传递上界限制对 random.nextInt() 的调用)。
  3. 通过使用刚刚获得的数字索引到数组中来获取字符串。
于 2012-06-06T16:37:32.357 回答
3
String[] s = {"your", "array", "of", "strings"};

Random ran = new Random();
String s_ran = s[ran.nextInt(s.length)];
于 2013-05-17T05:04:56.080 回答
2

使用您随机选择的整数值作为字符串数组的索引。

于 2012-06-06T16:36:23.010 回答
2
Random r = new Random();
System.out.println(list.get(r.nextInt(list.size())));

这将在 0 [包含] 和 list.size() [不包含] 之间生成一个随机数。然后,只需将该索引处的元素从列表中取出。

于 2012-06-06T17:08:03.187 回答
0

shuffle(List list) 使用默认随机源随机排列指定的列表。

// Create a list
List list = new ArrayList();

// Add elements to list
..

// Shuffle the elements in the list
Collections.shuffle(list);
list.get(0);
于 2012-06-06T16:39:24.813 回答