效果如图:
思路:先新建一个数组,然后循环给他赋值就得到一个顺序数组,然后在另一个循环中用以随机数作下标值的元素?与正常的数组下标值的元素进行交换。
代码及详情如下:
int[] a=new int[10];//先创建一个大小为10的数组
//用循环先给数组赋值,得到一个顺序数组
for(int i=0;i<a.length;i++) {
a[i]=i;
}
//输出打乱前的数组
System.out.println("打乱前的数组:"+Arrays.toString(a));
System.out.println("-------------------");//分割线
//再用随机数来实现这个打乱的操作
for (int i = 0; i < a.length; i++) {
int j=new Random().nextInt(a.length);
//random().nextInt(int n);返回的是【0,n)的范围的随机数
//用范围为[0,a.length)的随机数j作下标与a[i]进行交换操作,达到打乱的效果
int t=a[i];
a[i]=a[j];
a[j]=t;
}
//输出打乱后的数组
System.out.println("打乱后的数组:"+Arrays.toString(a));
//Arrays.toString(数组名),这个方法是用来将数组转换成String类型输出的
?
|