[Java]有关Java中Arrays.sort()的用法
来源:互联网 发布:jquery.media.js 官网 编辑:程序博客网 时间:2024/06/11 04:35
平常,作为静态类Arrays中的静态方法sort()经常被我们使用。但是你知道怎么控制它排序按照正序还是逆序呢?
其实,可以通过使用Comparable接口//Comparator接口,实现compareTo() / /compare()方法来调整正序还是逆序。
代码如下:
首先创建一个StudentCoparable类使用Comparable接口,并实现方法compareTo();
public class StudentComparable implements Comparable<StudentComparable>{private String number;private String name;private int age;public int compareTo(StudentComparable student) {return Integer.parseInt(this.number)-Integer.parseInt(student.number);}
<span style="white-space:pre"></span>……
}
然后我们开始测试数据,
import java.util.Arrays;public class Test {public static void main(String[] args) {StudentComparable sc = new StudentComparable("10000", "lz", 18);StudentComparable sc1 = new StudentComparable("10001", "wx", 18);StudentComparable sc2 = new StudentComparable("10003", "zh", 18);StudentComparable sc3 = new StudentComparable("10002", "gd", 18);StudentComparable scs[] = new StudentComparable[]{sc,sc1,sc2,sc3};Arrays.sort(scs);//正序排序for (int i = 0; i < scs.length; i++) {System.out.println(scs[i].getNumber()+","+scs[i].getName()+","+scs[i].getAge());}}}此时,测试结果为:
可见是正序排序。
那如果想要逆序排序呢?其实很简单,只需要把compareTo中的
return Integer.parseInt(this.number)-Integer.parseInt(student.number);
//换个位置
<pre name="code" class="java">return Integer.parseInt(<span style="font-family: Arial, Helvetica, sans-serif;">student.number</span><span style="font-family: Arial, Helvetica, sans-serif;">)-Integer.parseInt(this.number);</span>
即可变为逆序排序。
其中,Comparator接口也是相同,只需修改compare中的返回值,就可以调整正逆序输出了!!
结论:Arrays中的sort()方法,是跟Comparable接口,Comparator接口有密切相关,如果将来想使用这两个接口和Arrays.sort()方法,值得注意一下。
0 0
- [Java]有关Java中Arrays.sort()的用法
- [JAVA]有关Java中Arrays.sort()的用法
- 关于java中Arrays.sort()的几种用法
- Java中Arrays的sort方法
- java中Arrays.sort()的源码分析
- java容器--java.util.Arrays与java.util.Collections类中sort()的用法(转)
- Java中Arrays.sort()实现
- Java数组排序Arrays.sort,以及Comparator接口的用法
- java数组排序Arrays.sort,以及Comparator接口的用法
- Java数组排序Arrays.sort,以及Comparator接口的用法
- Java数组排序Arrays.sort,以及Comparator接口的用法
- Java数组排序Arrays.sort,以及Comparator接口的用法
- Java数组排序Arrays.sort,以及Comparator接口的用法
- Java数组排序Arrays.sort,以及Comparator接口的用法
- Java数组排序Arrays.sort,以及Comparator接口的用法
- Java数组排序Arrays.sort,以及Comparator接口的用法
- Java中Arrays类用法的总结
- java中Arrays类的用法
- CentOS 6.5 rc.local 开机不执行的原因之一
- HDU2188(巴什博奕)
- hdu1813 IDA*算法
- STL 中的< 重载
- javaweb实现验证码利用封装类及汉字字体的实现
- [Java]有关Java中Arrays.sort()的用法
- java高级计算器的实现
- Android笔记 simpleAdapter demo
- 查看局域网其他电脑的计算机名和IP
- ArrayList源码分析
- 从头到尾彻底理解KMP
- HDU2897( 巴什博奕变形)
- wince 注册表文件 platform.reg 详解
- 【Suspended】The Data Scientist’s Toolbox, Johns Hopkins, coursera