因为学习了java8的内容,所有想用java8中的stream操作实现对数组的反转
在尝试过程中,发现Comparator下面有reverseOrder()方法,按照字面意思理解以为是将数组进行反转
然而实际尝试过程中发现,该方法实际实现并没有对数组进行反转,而是将其中的按照从大到小排列
代码如下:
String []str={"a","c","d","b"};
System.out.println("字符串1"+Arrays.toString(Arrays.stream(str).sorted(Comparator.reverseOrder()).toArray()));
int []intnum={1,0,4,3};
String []str2={"as","cv","ds","bsadf"};
System.out.println("字符串2"+Arrays.toString(Arrays.stream(str2).sorted(Comparator.reverseOrder()).toArray()));
运行结果如下:

可以看出,这里面默认的排序是按照第一个字符的ASKII编码进行排序的,然后从大到小
本文探讨了Java8中Stream结合Comparator.reverseOrder()方法实现数组元素反向排序的过程。通过具体示例,解释了该方法并非直接反转数组,而是依据ASCII码值进行从大到小的排序。代码演示了不同数据类型下reverseOrder()的应用。
1149

被折叠的 条评论
为什么被折叠?



