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+"出场");
} }}
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]);
}
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;
}
}
}}
/**
* @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] + "出场");
}
}
}
多写了个逗号!
你的代码基本上没有问题: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]+"出场");
}
}
}