arrays.sort()小数排序
时间: 2025-06-06 16:38:12 浏览: 15
### 使用 `Arrays.sort()` 对小数数组进行排序
对于小数类型的数组,在 Java 中可以使用 `double` 或者 `Double` 类型表示。由于原始类型 `double[]` 和封装类 `Double[]` 的处理方式不同,下面分别介绍这两种情况下的排序方法。
#### 原始类型 double 数组排序
当操作的是原始类型 `double[]` 时,可以直接调用 `Arrays.sort(double[])` 方法完成升序排列[^3]:
```java
public class SortExample {
public static void main(String[] args) {
double[] decimalNumbers = {4.5, 2.1, -1.2, 3.4};
Arrays.sort(decimalNumbers);
System.out.println("Sorted array:");
for (double num : decimalNumbers){
System.out.println(num);
}
}
}
```
此代码片段展示了如何创建并初始化一个双精度浮点数数组,随后对其进行自然顺序(即从小到大)的排序,并打印结果。
#### 封装类型 Double 数组排序
如果使用的是一维 `Double[]` 数组,则同样适用 `Arrays.sort(Double[])` 函数来进行默认升序排序;而对于更复杂的场景比如降序或其他自定义比较逻辑,则需提供额外参数——如 `Comparator<Double>` 接口实例来指定特定规则[^4]:
```java
import java.util.Arrays;
import java.util.Collections;
public class SortExampleWithComparator {
public static void main(String[] args) {
Double[] boxedDecimalNumbers = {4.5, 2.1, -1.2, 3.4};
// 升序排序
Arrays.sort(boxedDecimalNumbers);
// 降序排序
Arrays.sort(boxedDecimalNumbers, Collections.reverseOrder());
System.out.println("Reversed sorted array:");
for (Double num : boxedDecimalNumbers){
System.out.println(num);
}
}
}
```
这段程序先执行了一次常规升序排序,紧接着利用 `Collections.reverseOrder()` 创建了一个反转比较器用于实现降序效果。
阅读全文
相关推荐















