public class hello { /**
 * @param args
 */
public static void main(String[] args) {
int a[]=new int[5];
for(int i=0;i<5;i++)
{
a[i]=(int)(Math.random()*5+1);
int random=0;
for(int j=i-1;j>=0;j--);
    {
     if(a[i]==a[j])
     {
      random++; 
     }
  
    }
    if (random>0)
    {
i--;
continue;
    }
System.out.println("第"+i+"组"+"第"+i+"出场");
} }}

解决方案 »

  1.   

    你还没有给整个数组赋值就开始动手了
    int j=i-1;当i=0的时候,j就成-1了
    随机就可以随机下标,参考一下
    int a[] = new int[]{1,4,7,3,9};//先赋值,当然可以用循环来做
    java.util.Random r = new java.util.Random();
    int max = a.length;
    for(int i=0;i<max;i++)
    {
    int j = Math.abs(r.nextInt()%max);
    System.out.println("第"+i+"次选择了:"+a[j]);
    }
      

  2.   

    建议楼主!!以后提问题时!说清楚点!!我试图理解了一下!看看符合要求不!?
    package wuchunzhi;public class hello {
    /**
     * @param args
     */
    public static void main(String[] args) {
    int random=0;int m,i=0;
    int a[]=new int[]{1,2,3,4,5};
    for(;random!=5;)
    {
    i++;
    m=(int)(Math.random()*5+1);
    //System.out.print("测试随机数生成次数!"+i);
    if (a[m-1]!=0)
    {
    System.out.println("第"+a[m-1]+"组"+"第"+a[m-1]+"出场");
        random++;
        a[m-1]=0;
        }    
    }
    }} 
      

  3.   

    重复问题:代码结构有点问题而已,我替你调整了一下 public class hello{
      /**
       * @param args
       */
      public static void main(String[] args) {
        int a[] = new int[5]; // 定义一个数组,储存随机数字
        for (int i = 0; i < 5; i++) {
          a[i] = (int) (Math.random() * 5 + 1); // 产生(1-5)的随机数
          int random = 0;
          for (int j = i - 1; j >= 0; j--) {
            if (a[i] == a[j]) // 避免重复 {
              random++;
          }
          if (random > 0) // 也就是说、如果重复了的话,i--,在产生一次,直到全出完为止
          {
            i--;
            continue;
          }
          System.out.println("第" + i + "组" + "第" + a[i] + "出场");
        }
      }
    }
      

  4.   

    for(int j=i-1;j>=0;j--); 
    多写了个逗号!
      

  5.   

    我明白你的意思了;你就是想让这5个随即数字,都是不相同的是吧?
    你的代码基本上没有问题:public class hello { 
    //不解释了,基本你都明白~
    public static void main(String[] args) { 
    int a[]=new int[5]; 
    for(int i=0;i <5;i++) 

    a[i]=(int)(Math.random()*5+1); 
    int random=0; 
    for(int j=i-1;j>=0;j--) { 
         if(a[i]==a[j])random++;  

    if (random>0)
    {
    i--;
    continue;
    }
    System.out.println("第"+i+"组"+"第"+a[i]+"出场");