2011-12-21 55 views
-1

在下面的程序中,我有19个元素在数组ID。由于我使用随机类,它随机从数组中重复检索id。我需要避免重复值并随机打印数组中的所有值。Java随机类程序

import java.util.Random; 
public class random { 
public static void main(String[] args) { 
    int[] id={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19}; 
    Random rand=new Random(); 
    for(int i=0;i<20;i++) 
    { 
      int alength=id.length; 
    //System.out.println("Length="+alength); 
    int index1=rand.nextInt(alength); 
    int team=id[index1]; 
    System.out.println("Team="+team); 
    }}} 
+1

我想先洗牌的阵列,然后只是迭代它,并打印值... – home 2011-12-21 08:43:52

+1

这是功课吗? – Ishtar 2011-12-21 08:45:17

回答

4

您可以随机数组的元素,然后打印出来

Collections.shuffle(Arrays.asList(array)); 
0

你必须记住所有以前的数字知道,如果电流是duplicate.So这将是更好地构建一个新的字符串,不首先复制,然后随机打印数字。

+1

在洗牌列表之前使用Set更容易。然后删除重复项。 – proko 2011-12-21 08:56:24