Java 语言使用 Arrays 类提供的 sort() 方法来对数组进行排序。

升序

使用 java.util.Arrays 类中的 sort() 方法对数组进行升序分为以下两步:

  1. 导入 java.util.Arrays 包。
  2. 使用 Arrays.sort(数组名) 语法对数组进行排序,排序规则是从小到大,即升序。

假设在数组 scores 中存放了 5 名学生的成绩,现在要实现从低到高排列的功能。在这里使用 Arrays.sort() 方法来实现,具体代码如下:

public static void main(String[] args) {// 定义含有5个元素的数组double[] scores = new double[] { 78, 45, 85, 97, 87 };System.out.println("排序前数组内容如下:");// 对scores数组进行循环遍历for (int i = 0; i < scores.length; i++) {System.out.print(scores[i] + "\t");}System.out.println("\n排序后的数组内容如下:");// 对数组进行排序Arrays.sort(scores);// 遍历排序后的数组for (int j = 0; j < scores.length; j++) {System.out.print(scores[j] + "\t");}
}

如上述代码所示,要对一个数组进行升序排列,只需要调用 Arrays.sort() 方法即可。运行后的输出结果如下所示。

排序前数组内容如下:
78.0    45.0    85.0    97.0    87.0
排序后的数组内容如下:
45.0    78.0    85.0    87.0    97.0

降序

在 Java 语言中使用 sort 实现降序有两种方法,简单了解即可。

1)利用 Collections.reverseOrder() 方法(Collections 是一个包装类。):

public static void main(String[] args) {Integer[] a = { 9, 8, 7, 2, 3, 4, 1, 0, 6, 5 };    // 数组类型为IntegerArrays.sort(a, Collections.reverseOrder());for (int arr : a) {System.out.print(arr + " ");}
}

输出结果如下:

9 8 7 6 5 4 3 2 1 0

2)实现 Comparator 接口的复写 compare() 方法,代码如下:

public class Test {public static void main(String[] args) {/** 注意,要想改变默认的排列顺序,不能使用基本类型(int,double,char)而要使用它们对应的类*/Integer[] a = { 9, 8, 7, 2, 3, 4, 1, 0, 6, 5 };// 定义一个自定义类MyComparator的对象Comparator cmp = new MyComparator();Arrays.sort(a, cmp);for (int arr : a) {System.out.print(arr + " ");}}
}// 实现Comparator接口
class MyComparator implements Comparator<Integer> {@Overridepublic int compare(Integer o1, Integer o2) {/** 如果o1小于o2,我们就返回正值,如果o1大于o2我们就返回负值, 这样颠倒一下,就可以实现降序排序了,反之即可自定义升序排序了*/return o2 - o1;}
}

输出结果如下所示。

9 8 7 6 5 4 3 2 1 0

注意:使用以上两种方法时,数组必须是包装类型,否则会编译不通过。

1.14 sort()数组排序(升序和降序)相关推荐

  1. php降序怎写,php 数组排序(升序、降序及相关问题)

    php 数组排序(升序.降序及相关问题),供大家参考. 先来普通下知识,在php中快速创建数组可以用函数range(),有关range的使用方法,请参考链接: http://www.jquerycn. ...

  2. 数组排序sort()。升序还是降序

    array.sort(方法函数) 1.如果不指定<方法函数>,则按unicode码顺序排列. 2.如果指定<方法函数>,则按<方法函数>所指定的排序方法排序. 方法 ...

  3. linux下使用sort命令升序、降序、随机及组合方式排序方法

    示例文件: #################################################### 序号       优先级       字段1        字段2 1       ...

  4. JS使用sort进行升序和降序排序

    如果指明了 compareFunction ,那么数组会按照调用该函数的返回值排序.即 a 和 b 是两个将要被比较的元素: 如果 compareFunction(a, b) 小于 0 ,那么 a 会 ...

  5. python中的排序(升序和降序)

    用sort实现升序和降序 lst1=[10,20,40,5]#升序排序 lst1.sort()lst=sorted(lst1) #sorted会产生新的一个列表#降序排序 lst1.sort(reve ...

  6. c#sort升序还是降序_被玩坏的数组排序之sort函数

    JavaScript 的数组排序是一个非常常见业务场景 ECMAScript 为数组提供了一个原生的sort函数,今天我们就来好好看看你对sort函数究竟了解多少. 首先我们来看一下sort函数的基本 ...

  7. java中升序 降序怎么表示_Java sort()数组排序(升序和降序)

    我们在学习 Java 的过程中肯定会遇到对数组进行升序或降序等排序问题,本节主要介绍如何实现 Java 数组的升序和降序.Java 语言使用 Arrays 类提供的 sort() 方法来对数组进行排序 ...

  8. 【Java】用sort实现对数组的升序和降序排序

    Java 用 sort 实现对数组的升序和降序排序 一.ArrayList 的升序与降序 二.数组升序 三.数组降序 方法一 方法二 一.ArrayList 的升序与降序 升序:Collections ...

  9. java——数组排序(升序和降序排列)

    目录 任务2.数组排序(升序和降序排列) 1.选择法排序 (1)选择法排序含义 (2)选择法排序实现步骤 2.冒泡法排序 (1)冒泡法排序含义 (2)冒泡法排序实现步骤 补充:利用Arrays工具提供 ...

  10. python升序和降序排序sort_【python】 sort、sorted高级排序技巧

    这篇文章主要介绍了Python中列表(List)的详解操作方法,包含创建.访问.更新.删除.其它操作等,需要的朋友可以参考下 Python list内置sort()方法用来排序,也可以用python内 ...

最新文章

  1. 原始ajax方式调用asp.net后台方法
  2. 深度解析AIoT背后的发展逻辑
  3. EOS之记事本智能合约
  4. mysql引擎层存储层_MySQL存储底层技术:InnoDB底层原理解读
  5. 自定义request_Spring Security 自定义登录认证(二)
  6. 自己动手调试Android源码(超简单)
  7. Jquery 获取 radio选中值
  8. 第二届河南省大学生程序设计竞赛 Dr.Kong的机器人
  9. js+css实现验证码框,前端实现6位验证码输入框效果
  10. java字符类型的返回值,Java字符类isWhitespace()方法及示例
  11. 不可错过的「持续集成」进阶指南
  12. YOLOv2——中文版翻译
  13. 线程生命周期与创建线程的多种方式
  14. 数据分析方法,寻找事物之间的因果规律-逻辑关系法(2)
  15. guided filter matlab,导向滤波(Guided Filter)的解析与实现
  16. 驱动篇 -- 继电器
  17. 网络-数据链路层回顾
  18. Windows Server 安装 Adobe Flash Player
  19. 百度文字识别OCR接口使用
  20. 上个周末走访福州市2家软件公司,感受颇多,把经验分享给大家

热门文章

  1. 成功解决PermissionError: [Errno 13] Permission denied: './data\\mnist\\train-images-idx3-ubyte'
  2. Py之moviepy:python库之moviepy的简介、安装、使用方法详细攻略
  3. 个性化背词软件 更新ing(9-4)
  4. C#最基本的小说爬虫
  5. HDU 3501 Calculation 2
  6. MyEclipse 编写 ExtJS 卡死问题解决方法
  7. Mathematica数据处理(11)--标签
  8. 链接器怎样使用静态库来解决符号引用
  9. php获取上传多个文件缺失
  10. bidirectional pathtracing算法学习