关于sort()的集合与数组有关sort()方法的这两个有什么区别?我知道Arrays的sort()正在使用二进制搜索sort(),那么Collections呢?以及如何选择使用哪个?谢谢!
Mar*_*iot 47
那么,除了在不同的东西操作(Collections.sort操作上List,以及Arrays.sort操作的阵列),java.util.Collections.sort()简单地调用java.util.Arrays.sort()做繁重.
此外,对于它的价值,注意Arrays.sort运行合并排序.
use*_*421 11
我知道Arrays的sort()正在使用二进制搜索sort()
不,你不知道任何这样的事情.它没有这样做.见Javadoc.
声明甚至没有意义.你不能 '使用二进制搜索进行排序'.二进制搜索仅在数据已排序时才有效.也许您所读到的是Arrays.binarySearch() 假定数据已排序.
小智 10
Collections.sort()在List上运行,而Arrays.sort()在Array上运行.
Arrays.sort()使用Dual-Pivot Quicksort进行原始数组,使用MergeSort进行对象数组的排序.
Collections.sort()的示例:
ArrayList<Integer> arr = new ArrayList<Integer>();
arr.add(15);
arr.add(10);
arr.add(5);
arr.add(2);
Collections.sort(arr);
Run Code Online (Sandbox Code Playgroud)
Arrays.sort()的示例:
int[] arr = new int[4]
arr[0]=15;
arr[1]=10;
arr[2]=5;
arr[3]=2;
Arrays.sort(arr);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
35150 次 |
| 最近记录: |