public class TestEmployeeArraySortByComparators
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: */