使用Java语言实现以下功能,产生一个一维数组存放20个不重复的整数,再产生一个新的数组存放原来的数组存放元素乱序处理后的数据,分别打印处新旧数组
时间: 2024-05-22 20:15:38 浏览: 73
整数1~30(1-n)随机乱序排列,无重复数字,不用if判断。
import java.util.Arrays;
public class ArrayShuffle {
public static void main(String[] args) {
int[] arr = generateArray(20); // 产生一个一维数组存放20个不重复的整数
int[] shuffledArr = shuffleArray(arr); // 产生一个新的数组存放原来的数组存放元素乱序处理后的数据
System.out.println("原始数组:" + Arrays.toString(arr));
System.out.println("乱序处理后的数组:" + Arrays.toString(shuffledArr));
}
// 产生一个一维数组存放size个不重复的整数
public static int[] generateArray(int size) {
int[] arr = new int[size];
for (int i = 0; i < size; i++) {
arr[i] = i + 1;
}
return arr;
}
// 产生一个新的数组存放原来的数组存放元素乱序处理后的数据
public static int[] shuffleArray(int[] arr) {
int[] shuffledArr = Arrays.copyOf(arr, arr.length);
for (int i = 0; i < shuffledArr.length; i++) {
int j = (int) (Math.random() * shuffledArr.length);
int temp = shuffledArr[i];
shuffledArr[i] = shuffledArr[j];
shuffledArr[j] = temp;
}
return shuffledArr;
}
}
阅读全文