【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/

posted @ 2012-12-17 21:21  gnuhpc  阅读(3702)  评论(0编辑  收藏  举报