Advertisement
fursty

oop2 - lab7 Collatio 2n

Apr 9th, 2019
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.59 KB | None | 0 0
  1. class Person implements Comparable<Object>{
  2.  
  3. private String firstName, lastName;
  4. private int age;
  5. private static Collator collator = Collator.getInstane(Locale.getDefault());
  6. private CollationKey lastNameKey:
  7. private CollationKey firstNameKey;
  8. public Person(String firstName, String lastName, int age){
  9. this.firstName = firstName;
  10. this.lastName=lastName;
  11. this.age=age;
  12. lastNameKey=collator.getCollationKey(lastName.toLowerCase()+" "+ firstName.toLowerCase());
  13. firstNameKey = collator.getCollationKey(firstName.toLowerCase())+" " + lastName.toLowerCase());
  14. }
  15.  
  16. public String getfirstName() { return this.firstName; }
  17. public String getlastName() { return this.lastName; }
  18. public int getAge() {return this.age;}
  19.  
  20. public String toString() // Stringvame Stringa
  21. {
  22. return "Ime:" + firstName + "Familiq:" + lastName + "Godini:" + age;
  23. }
  24.  
  25. public boolean equals(Object r) { //tui prai neshto
  26. return this.age==((Person)r).age;}
  27. public int compareTo(Object o){
  28. return this.age - ((Person)o).getAge();
  29. }
  30. }
  31. class LastNameComparator implements Comparator<Object>{
  32.  
  33. public int compare(Object a, Object b)
  34. {
  35. return ((Person)a).getLastNameKey().compareTo
  36. (((Person)b).getLastNameKey());
  37. }
  38. /* public int comapre(Object a, Object b){
  39. int res = ((Person)a).getLastName().compareTo(((Person)b).getLastName());
  40. if(res==0){
  41. res=((Person)a).getFirstName().compareTo(((Person)b).getFirstName());
  42. }
  43. return res;
  44. } */ //komentar na komentara
  45. }
  46.  
  47. /*4*/ public class UsersGroup{
  48. private String groupName;
  49. private list<User>users=new ArrayList<user>();
  50. public UsersGroup(String groupName){
  51. this.groupName = groupName;
  52. }
  53. // Dobavqne na parametara
  54. public void addUser(User toAdd){
  55. users.add(toAdd);
  56. }
  57. public void sortByLastName(){
  58. Collections.sort(users, new LastNameComparator());
  59. }
  60. public void sortByFirstName(){
  61. Collections.sort(users,new FirstNameComparator());
  62. }
  63. public void sortByUserName(){
  64. Collections.sort(users);
  65. }
  66. public String toString(){
  67. return "Group name:" + groupName + "\n"+users.toString();
  68. }
  69.  
  70. public static void main(String[]args){
  71. UsersGroup a = new UsersGroup(" ");
  72. a.addUser(new User());
  73. System.out.println(a.toString());
  74. a.sortByFirstName();
  75. System.out.printl(a.toString(); ///M Повер
  76. }
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement