Java中的compare方法和conpareTo方法使用详解
生活随笔
收集整理的這篇文章主要介紹了
Java中的compare方法和conpareTo方法使用详解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、compare方法
一般用在優先級隊列和重寫Arrays.sort中,新建比較器,重寫compare方法
1.1 優先級隊列中使用(比較器后一個元素為大的)
例如:使用小頂堆找最大TopK就構造了
queue = new PriorityQueue<>(new Comparator<Integer>() { // 默認從小到大@Overridepublic int compare(Integer o1, Integer o2) {return o1 - o2; // 后一個o2大于前面的o1,所以是順序排列} });1.2 Arrays.sort()中使用(也是后一個參數是較大的)
Arrays.sort(articleRecords, new Comparator<int[]>() {@Overridepublic int compare(int[] o1, int[] o2) {for (int i = 0; i < 6; i++) {if (o1[i] - o2[i] != 0) {return o2[i] - o1[i];}}return 0;}});二、conpareTo方法
實例:
public class Test {public static void main(String[] args) {Integer x = 5;System.out.println(x.compareTo(3));System.out.println(x.compareTo(5));System.out.println(x.compareTo(7));} }輸出:
解釋:
返回值
- 如果指定的數x大于參數返回 1。
- 如果指定的數x等于參數返回0。
- 如果指定的數x小于參數返回 -1。
總結
以上是生活随笔為你收集整理的Java中的compare方法和conpareTo方法使用详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TortoiseGit安装与汉化详细教程
- 下一篇: C#WPF 语音开发教程 TTS中英