Source of TestEmployeeArraySortByComparators.java


  1: //TestEmployeeArraySortByComparators.java

  3: import java.util.Arrays;

  5: public class TestEmployeeArraySortByComparators
  6: {
  7:     public static void main(String[] args)
  8:     {
  9:         Employee[] employeeArray =
 10:         {
 11:             new Employee("Frank", 5, 28),
 12:             new Employee("Jorge", 1, 19),
 13:             new Employee("Bill", 6, 34),
 14:             new Employee("Michel", 3, 10),
 15:             new Employee("Simpson", 7, 8),
 16:             new Employee("Clark", 4, 16),
 17:             new Employee("Lee", 8, 40),
 18:             new Employee("Mark", 2, 30)
 19:         };

 21:         System.out.println("\nName\tID#\tAge");
 22:         System.out.println("===================");
 23:         for (Employee e : employeeArray)
 24:         {
 25:             System.out.println(e);
 26:         }

 28:         Arrays.sort(employeeArray, new EmployeeNameComparator());
 29:         System.out.println("\nName\tID#\tAge");
 30:         System.out.println("===================");
 31:         for (Employee e : employeeArray)
 32:         {
 33:             System.out.println(e);
 34:         }

 36:         Arrays.sort(employeeArray, new EmployeeIdComparator());
 37:         System.out.println("\nName\tID#\tAge");
 38:         System.out.println("===================");
 39:         for (Employee e : employeeArray)
 40:         {
 41:             System.out.println(e);
 42:         }

 44:         Arrays.sort(employeeArray, new EmployeeAgeComparator());
 45:         System.out.println("\nName\tID#\tAge");
 46:         System.out.println("===================");
 47:         for (Employee e : employeeArray)
 48:         {
 49:             System.out.println(e);
 50:         }

 52:         /*  What will the sort be if you activate this code segment?
 53:             Arrays.sort(employeeArray);
 54:             System.out.println("\nName\tID#\tAge");
 55:             System.out.println("===================");
 56:             for (Employee e : employeeArray)
 57:             {
 58:                 System.out.println(e);
 59:             }
 60:         */
 61:     }
 62: }
 63: /*  Output:

 65:     Name    ID#     Age
 66:     ===================
 67:     Frank   5       28
 68:     Jorge   1       19
 69:     Bill    6       34
 70:     Michel  3       10
 71:     Simpson 7       8
 72:     Clark   4       16
 73:     Lee     8       40
 74:     Mark    2       30

 76:     Name    ID#     Age
 77:     ===================
 78:     Bill    6       34
 79:     Clark   4       16
 80:     Frank   5       28
 81:     Jorge   1       19
 82:     Lee     8       40
 83:     Mark    2       30
 84:     Michel  3       10
 85:     Simpson 7       8

 87:     Name    ID#     Age
 88:     ===================
 89:     Jorge   1       19
 90:     Mark    2       30
 91:     Michel  3       10
 92:     Clark   4       16
 93:     Frank   5       28
 94:     Bill    6       34
 95:     Simpson 7       8
 96:     Lee     8       40

 98:     Name    ID#     Age
 99:     ===================
100:     Simpson 7       8
101:     Michel  3       10
102:     Clark   4       16
103:     Jorge   1       19
104:     Frank   5       28
105:     Mark    2       30
106:     Bill    6       34
107:     Lee     8       40
108: */