我将10个随机数存入int数组a,然后用Arrays.sort(a)排序,想再用Collections.reverse(Arrays.asList(a))将其排成降序,但是没有成功,输出的还是升序,哪位帮忙看看是什么原因,源代码如下:
import java.util.*;
public class Exe1111
{
public static void main(String[] args)
{
int[] a = new int[10];
Random rd = new Random();
for(int i=0; i<10; i++)
{
a[i] = rd.nextInt(10000);
System.out.println(a[i]);
}
Arrays.sort(a);
for(int j=0; j<10; j++)
{
System.out.println("asc:" + a[j]);
}
Collections.reverse(Arrays.asList(a));
System.out.println(Arrays.toString(a)); //输出的字符串中的数字顺序与使用Arrays.sort(a)后一样,都是升序,为什么啊?
}
}
------解决方案--------------------------------------------------------
- Java code
int[] a = new int[10];...Arrays.asList(a); //关键在这句,asList 把 a 包装成了一个长度为 1 元素类型为 int[] 的 List 了。//下面代码能验证List list = Arrays.asList(a);System.out.println(list.size()); //结果为 1System.out.println(list.get(0)); //结果为 [I@de6ced
------解决方案--------------------------------------------------------