2012-02-11 4 views
0
String a="aaa"; 
String b="bbb"; 
String c="ccc"; 
String d="ddd"; 

String p,q,r,s; 

Как я могу присвоить значения p, q, r, s случайным образом из a, b, c, d?Выбор и назначение строк

Как р должно иметь значение от а, б, в, г и аналогично для Q, R, S

Но значение не должно повторяться.

+2

Добро пожаловать в SO. См. Ответ @ BalusC отсюда: http://stackoverflow.com/questions/4702036/take-n-random-elements-from-a-liste. Кроме того, он помогает выполнять поиск (здесь или в Google), прежде чем публиковать новые вопросы. – Perception

ответ

3

Самый простой способ сделать это - это просто поместить все строки в массив (или список или аналогичный), перетасовать список и назначить первое значение в перетасованном массиве до p, второе - q и т. Д. .

Вот пример того, как сделать это:

String[] strings = new String[] { 
    "aaa", "bbb", "ccc", "ddd" 
}; 

Collections.shuffle(Arrays.asList(strings)); 

String p = strings[0], 
     q = strings[1], 
     r = strings[2], 
     s = strings[3]; 
+0

Большое спасибо, он работает –

2

Создайте массив из a,b,c,d и используйте случайный код 0~3, чтобы получить значение.

0

Добавить свой Strings к List<String>, а затем использовать метод nextInt(sizeOfList)java.util.Random класса.

Смежные вопросы