zoukankan      html  css  js  c++  java
  • 【Java学习笔记】实现Comparator接口来进行字符串逆向排序

    作者:gnuhpc
    出处:http://www.cnblogs.com/gnuhpc/

    // Create a Comparator that returns the outcome
    // of a reverse string comparison.
    class RevStrComp implements Comparator<String> {
      // Implement the compare() method so that it
      // reverses the order of the string comparison.
      public int compare(String strA, String strB) {// Compare strB to strA, rather than strA to strB.
    return strB.compareTo(strA);
      }
    }

    // Sort an array of strings in reverse order.
    import java.util.*;
    // Create a Comparator that returns the outcome
    // of a reverse string comparison.
    class RevStrComp implements Comparator<String> {
      // Implement the compare() method so that it
      // reverses the order of the string comparison.
      public int compare(String strA, String strB) {
        // Compare strB to strA, rather than strA to strB.
        return strB.compareTo(strA);
      }
    }
    // Demonstrate the reverse string comparator.
    class RevStrSort {
      public static void main(String args[]) {
        // Create a sample array of strings.
        String strs[] = { "dog", "horse",  "zebra", "cow", "cat" };
        // Show the initial order.
        System.out.print("Initial order: ");
        for(String s : strs)
          System.out.print(s + " ");
        System.out.println("/n");
        // Sort the array in reverse order.
        // Begin by creating a reverse string comparator.
        RevStrComp rsc = new RevStrComp();

        // Now, sort the strings using the reverse comparator.
        Arrays.sort(strs, rsc);
        // Show the reverse sorted order.
        System.out.print("Sorted in reverse order: ");
        for(String s : strs)
          System.out.print(s + " ");
        System.out.println("/n");
        // For comparison, sort the strings in natural order.
        Arrays.sort(strs);
        // Show the natural sorted order.
        System.out.print("Sorted in natural order: ");
        for(String s : strs)
          System.out.print(s + " ");
        System.out.println("/n");
      }
    }

    输出为:

    Initial order: dog horse zebra cow cat
    Sorted in reverse order: zebra horse dog cow cat
    Sorted in natural order: cat cow dog horse zebra

    作者:gnuhpc
    出处:http://www.cnblogs.com/gnuhpc/

  • 相关阅读:
    贪心算法与动态规划
    Linux重要目录结构
    博客园添加目录索引
    冒泡排序&插入排序&其他排序
    Linux下部署自己写的Web项目
    Java算法入门-数组&链表&队列
    Java集合-数据结构之栈、队列、数组、链表和红黑树
    Java集合-单例模式斗地主&Collections类的shuffle方法了解
    什么是反向代理服务器
    Linux信号处理
  • 原文地址:https://www.cnblogs.com/gnuhpc/p/2822349.html
Copyright © 2011-2022 走看看