2014-09-23 92 views
1

如何隨機隨機洗這個數組? 基本上我有4個按鈕,我想隨機更改按鈕的文本。例如: :按鈕具有黑色,紅色,黃色,綠色,我需要隨機更改這些文本,當我點擊任何按鈕。從資源隨機洗牌文本

這是我的代碼

final int[] name={ R.string.text1,R.string.text2,R.string.text3,R.string.text4}; 
List<Integer> shuffle = new ArrayList<Integer>(Arrays.asList(name)); 

for(int i = 0; i <shuffle.Count(); i++) 
b[i].Text = shuffle[i]; 
+1

檢查[這]( http://stackoverflow.com/a/1520212/1777090) – 2014-09-23 11:46:51

回答

1

您可以使用Collections.shuffle(名單)方法

final Integer[] name={ 1, 2, 3, 4}; 
List<Integer> shuffle = new ArrayList<Integer>(Arrays.asList(name)); 

for(int i = 0; i <shuffle.size(); i++) { 
    Collections.shuffle(shuffle); 
    for (int j = 0; j < shuffle.size(); j++) { 
     System.out.print(shuffle.get(j) + " "); 
    } 
    System.out.println(); 
} 

在這個例子中,輸出是:

4 3 1 2 
2 1 4 3 
3 1 2 4 
3 1 2 4