java 数组排序 Arrays.sort()用法
java中自带的Arrays.sort()函数可以免去很多时候写排序的时间。
Arrays.sort()默认按照从小到大排序(数组),
如果是字符,则是按照字典序排序
例:
public class Test {public static void main(String[] args) {Character[] characters = {'a','d','a','c','b'};Arrays.sort(characters);System.out.println(Arrays.toString(characters));}
}
结果:
当然,如果传入的是对象数组或者你想按照独特的方式排序,就要传入一个新的比较器Comparator:
例:
有一个2维数组,你想按照数组的第一维降序排序,当其第一维相等时按照第二维降序排序。
public class Test {public static void main(String[] args) {int[][] arr = {{4,2},{3,2},{4,1},{1,5},{2,5},{2,6}};Arrays.sort(arr, new Comparator<int[]>() {@Overridepublic int compare(int[] o1, int[] o2) {if (o1[0] == o2[0]) return o1[1] - o2[1];else {return o1[0] - o2[0];}}});for (int[] a : arr){System.out.println(Arrays.toString(a));}}
}
结果:
其底层使用的是快排+优化后的优化的归并选择排序
当数组长度较小的时候使用的是快排,数组长度较大时使用的是优化后的归并+选择排序
java 数组排序 Arrays.sort()用法相关推荐
- java arrays.sort() c_正面刚算法-Java中Arrays.sort()(一)
最近一直在看关于排序相关的算法,从O(n²)的冒泡.插入.选择到O(nlog(n))的归并.快排.再到桶排序.计数排序.基数排序.各个算法都有自己的优点和缺点,那么jdk中关于这种底层的算法是怎么实现 ...
- java中Arrays.sort()实现原理
2019独角兽企业重金招聘Python工程师标准>>> 先在网上找到一些说法: java中Arrays.sort使用了两种排序方法,快速排序和优化的合并排序. 快速排序主要是对哪些基 ...
- Java中Arrays.sort()的三种常用用法(自定义排序规则)
Arrays.sort(int[] a) 这种形式是对一个数组的所有元素进行排序,并且是按从小到大的顺序. 举例如下: import java.util.Arrays;public class Mai ...
- java中Arrays的用法
1. atList方法:返回一个固定大小的list Modifier and Type Method and Description static <T> List<T> as ...
- Java的Arrays.sort()良心总结
C语言的stilib.h头文件中有qsort(),C++的STL库中有sort(),这些封装好的排序函数让我们避免了比赛手写排序,给我们解题带来了的便利.在Java的Arrays类中也封装好了类似的方 ...
- (2015-12-09)java.util.Arrays的用法
在java中,使用java.util.Arrays可以很方便的操作数组 转载于:https://www.cnblogs.com/mengxiangqihang/p/5033618.html
- java的sort的用法_Java排序方法sort用法详解
Java排序方法sort用法详解 发布于 2020-2-28| 复制链接 摘记: 本文实例为大家分享了java对数组.集合的排序方法,供大家参考,具体内容如下对数组的排序: ```java //对数组 ...
- 二维数组排序php array_work,Arrays.Sort()中的那些排序算法
本文基于JDK 1.8.0_211撰写,基于java.util.Arrays.sort()方法浅谈目前Java所用到的排序算法,仅我的看法和笔记,如有问题欢迎指证,着重介绍其中的TimSort排序,其 ...
- Java中Array.sort()的几种用法[转]
转自: http://www.cnblogs.com/IT-sky/p/3749859.html?utm_source=tuicool&utm_medium=referral void jav ...
- java arrays.sort原理_Arrays.sort()原理
java中Arrays.sort使用了两种排序方法,快速排序和优化的归并排序. 快速排序主要是对哪些基本类型数据(int,short,long等)排序, 而合并排序用于对对象类型进行排序.使用不同类型 ...
最新文章
- Centos6.7安装docker1.7.1
- 系统架构图怎么画_基于ROS的移动机器人上层系统架构分析
- mysql创建删除触发器的时候_mysql触发器简介及如何创建和删除触发器
- bicq php,BICQ v2.0.0
- Django(补充CBV,FBV)
- DotText源码阅读(7) --Pingback/TrackBack
- 基于比率的路由到旧版和现代应用程序–通过Spring Cloud的Netflix Zuul
- Silverlight 3 学习概要
- Gradle配置国内源
- 韩企全球首造72层3D NAND芯片 下半年或量产
- Android6.0权限适配及兼容库的实现
- 【基础】网络常见的9大命令,非常实用!
- JUC与JVM并发编程学习笔记02
- VMware资源集合,分享一波
- 飞信2016 5.6.8820.0超级精简版
- arcgis拓扑与修复
- 微信公众平台、微信开放平台、微信商户平台的区别
- word中批量修改上角标、下角标
- 程序员:迟到1分钟罚300,加班却视而不见,月底工资让人寒心
- metasploit怎么用? 进阶(msfvenom=payloads+encoders)篇 (゚益゚メ) 渗透测试
热门文章
- bin文件用cad打开_bin文件 打开方法_win7如何打开bin 格式的文件图文步骤
- Facebook引流到独立站的三种技巧~附保姆级教程
- 内网穿透工具的原理与开发实战
- php wps导入数据库,金山的wps的表格怎样导入sqlserver2008数据库中??_wps excel表格怎么导入数据库...
- excel文件快速撤销工作表保护
- 服务器的mdf文件怎么打开,mdf文件用什么打开 mdf文件怎么打开
- TimesTen In-Memory Database
- 微软鼠标测试软件,微软IO1.1鼠标使用测试_微软 IO1.1红光鲨鼠标(战队包黑色版)_键鼠评测-中关村在线...
- QT封装exe和安装包详解
- 宏碁e5-572g重装linux,Acer-E5-572G笔记本U盘装原版win10系统教程