Java 怎么把Array.sort()转化为int[]类型
时间: 2024-09-12 13:14:24 浏览: 28
Java集合容器面试题(2022最新版)-重点.docx
在Java中,如果你有一个对象数组并且想要按照某个属性(如整数值)对其进行排序,`Arrays.sort()`方法通常用于基本类型的数组,例如`int[]`、`double[]`等。对于`Integer[]`这样的引用类型数组,`Arrays.sort()`默认使用对象的自然顺序排序,即根据对象的`compareTo()`方法。
如果你想直接对`int[]`数组进行排序,你可以这样做:
```java
// 假设我们有一个未排序的int数组
int[] unsortedArray = {5, 2, 8, 1, 9};
// 使用Arrays.sort()进行排序
Arrays.sort(unsortedArray);
// 现在unsortedArray已经是升序排列的
System.out.println(Arrays.toString(unsortedArray)); // 输出:[1, 2, 5, 8, 9]
```
如果你需要保持原始`int[]`数组的类型,而不是转换成`Integer[]`,那么你需要先创建一个新的`int[]`数组,然后复制排序后的元素:
```java
int[] originalArray = ...; // 原始未排序的int数组
int[] sortedArray = Arrays.copyOfRange(originalArray, 0, originalArray.length);
Arrays.sort(sortedArray);
// 排序后的int数组
System.arraycopy(sortedArray, 0, originalArray, 0, sortedArray.length);
```
注意,上述操作不会改变`originalArray`的引用,只是它的部分元素会被替换成已排序的新元素。
阅读全文