怎么用Java利用Random类产生10个1到100间的整数放到数组中,并将数组中元素降序排序后输出?
import java.util.Random;
import java.util.Arrays;
public class RandomArray {
public static void main(String[] args) {
Random random = new Random();
int[] array = new int[10];
for (int i = 0; i < array.length; i++) {
array[i] = random.nextInt(100) + 1; // 产生1到100的随机整数
}
System.out.println("随机生成的数组:");
System.out.println(Arrays.toString(array));
Arrays.sort(array); // 升序排序
reverseArray(array); // 降序排序
System.out.println("降序排序后的数组:");
System.out.println(Arrays.toString(array));
}
public static void reverseArray(int[] array) {
int left = 0;
int right = array.length - 1;
while (left < right) {
int temp = array[left];
array[left] = array[right];
array[right] = temp;
left++;
right--;
}
}
}
不知道你这个问题是否已经解决, 如果还没有解决的话:Random random = new Random();
//随机产生0-9当中的一个随机整数
int num = random.nextInt(10);
要解决这个问题,我们可以使用Java中的Random类生成10个1到100之间的随机整数,并将它们存储在一个数组中。然后,我们可以使用Java的Arrays类对数组进行排序,按照降序排列。最后,我们将排序后的数组输出。下面是具体的解决方案:
首先,我们创建一个大小为10的整型数组来存储随机数,并创建一个Random对象来生成随机数。代码示例如下:
import java.util.Arrays;
import java.util.Random;
public class RandomArrayExample {
public static void main(String[] args) {
int[] array = new int[10];
Random random = new Random();
for (int i = 0; i < array.length; i++) {
array[i] = random.nextInt(100) + 1;
}
System.out.println("原始数组: " + Arrays.toString(array));
}
}
在上面的代码中,我们使用random.nextInt(100) + 1
生成1到100之间的随机整数,并将其赋值给数组的每个元素。
接下来,我们可以使用Java的Arrays类对数组进行排序,按照降序排列。代码示例如下:
Arrays.sort(array);
int[] descendingArray = new int[array.length];
for (int i = 0; i < array.length; i++) {
descendingArray[i] = array[array.length - 1 - i];
}
System.out.println("降序排列后的数组: " + Arrays.toString(descendingArray));
在上面的代码中,我们首先使用Arrays.sort(array)
对数组进行升序排序。然后,我们创建一个大小与原始数组相同的新数组descendingArray
。我们通过遍历升序排序后的数组,并将元素倒序赋值给新数组来实现降序排列。
最后,我们将排序后的数组输出。代码示例如下:
System.out.println("降序排列后的数组: " + Arrays.toString(descendingArray));
将上述三部分代码组合起来,完整的解决方案如下:
import java.util.Arrays;
import java.util.Random;
public class RandomArrayExample {
public static void main(String[] args) {
int[] array = new int[10];
Random random = new Random();
for (int i = 0; i < array.length; i++) {
array[i] = random.nextInt(100) + 1;
}
System.out.println("原始数组: " + Arrays.toString(array));
Arrays.sort(array);
int[] descendingArray = new int[array.length];
for (int i = 0; i < array.length; i++) {
descendingArray[i] = array[array.length - 1 - i];
}
System.out.println("降序排列后的数组: " + Arrays.toString(descendingArray));
}
}
运行以上代码,你将得到一个输出类似以下结果的数组:
原始数组: [24, 63, 33, 10, 50, 87, 37, 23, 73, 34]
降序排列后的数组: [87, 73, 63, 50, 37, 34, 33, 24, 23, 10]
希望这个解决方案对你有帮助!如果有任何疑问,请随时提问。