帮忙解释下两个for循环

来源:百度知道 编辑:UC知道 时间:2024/06/23 21:35:23
import java.util.*;
///创建一个随机类对象rnd
///创建一个字符串类型的数组card
///通过循环语句,不断的从数组中取出两个对象,对其进行比较和排序
public class file4
{
public static void main(String[] args)
{
try
{
Random rnd=new Random();
String[] card={"方块1","方块2","方块3","方块4","方块5","方块6","方块7","方块8","方块9"};
String str;
int x,y;
for(int i=0;i<100;i++)
{
x=rnd.nextInt(9);
y=rnd.nextInt(9);
str=card[x];
card[x]=card[y];
card[y]=str;

}
for(int i=0;i<9;i++)
{
//System.out.println(card[i]);
System.out.println(card[x]);
}
}
catch(Exception e){}
}
}
还有就是它是如何实现随机数不重复的,我看不懂啊。先谢谢了。

没看出你这个程序是做啥的....

没实现这个:通过循环语句,不断的从数组中取出两个对象,对其进行比较和排序
for(int i=0;i<100;i++)//看不懂为啥要循环100次
{
x=rnd.nextInt(9);//获得0~9的随机数
y=rnd.nextInt(9);
str=card[x];//开始交换
card[x]=card[y];
card[y]=str;//交换结束

}
for(int i=0;i<9;i++)
{
//System.out.println(card[i]);
System.out.println(card[x]);//???循环输出9次?输出上面那个for循环最后一次时x的值所对应的card
}