我需要使用自定义排序规则对大约 100000 个整数进行排序。如果我使用 Comparator,我需要一个数组 Integer 实例,它创建速度较慢,排序速度较慢并且占用更多内存。
在装有 Android 4.2 的 Galaxy Nexus 上进行快速基准测试:
createIntArrayAndFillWith1to100000; // 18 ms
createIntegerArrayAndFillWith1to100000; // 191 ms (using Integer.valueOf(i))
Arrays.sort(randomInts); // 354 ms
Arrays.sort(randomIntegers, simpleComparator); // 1734 ms
实施自定义排序是我的最佳选择吗?