Source of TestArraySorting.java


  1: //TestArraySorting.java
  2: 
  3: import java.util.Arrays;
  4: import java.util.Scanner;
  5: 
  6: public class TestArraySorting
  7: {
  8:     public static void main(String[] args)
  9:     {
 10:         Scanner keyboard = new Scanner(System.in);
 11: 
 12:         String[] stringArray = {"Harry", "Carla", "Al", "Rob", "Dave"};
 13: 
 14:         for (String s : stringArray) System.out.print(s + " ");
 15:         System.out.print("\n=====1Press Enter to continue ... ");
 16:         keyboard.nextLine();
 17:         System.out.println();
 18: 
 19:         Arrays.sort(stringArray);
 20:         for (String s : stringArray) System.out.print(s + " ");
 21:         System.out.print("\n=====2Press Enter to continue ... ");
 22:         keyboard.nextLine();
 23:         System.out.println();
 24: 
 25:         Arrays.sort(stringArray, (s1, s2) -> s1.length() - s2.length());
 26:         for (String s : stringArray) System.out.print(s + " ");
 27:         System.out.print("\n=====3Press Enter to continue ... ");
 28:         keyboard.nextLine();
 29:         System.out.println();
 30: 
 31:         Arrays.sort(stringArray, (s1, s2) -> s1.compareTo(s2));
 32:         for (String s : stringArray) System.out.print(s + " ");
 33:         System.out.print("\n=====4Press Enter to continue ... ");
 34:         keyboard.nextLine();
 35:         System.out.println();
 36: 
 37:         Arrays.sort(stringArray, (s1, s2) -> s2.compareTo(s1));
 38:         for (String s : stringArray) System.out.print(s + " ");
 39:         System.out.print("\n=====5Press Enter to continue ... ");
 40:         keyboard.nextLine();
 41:         System.out.println();
 42: 
 43:         Arrays.sort(stringArray, (s1, s2) -> s1.substring(s1.length()-1).
 44:                                              compareTo(s2.substring(s2.length()-1)));
 45:         for (String s : stringArray) System.out.print(s + " ");
 46:         System.out.print("\n=====6Press Enter to continue ... ");
 47:         keyboard.nextLine();
 48:     }
 49: }