Advertisement
apl-mhd

compareto

Dec 13th, 2017
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.64 KB | None | 0 0
  1. package com.company;
  2.  
  3. import javax.print.attribute.standard.MediaSize;
  4. import java.util.ArrayList;
  5. import java.util.Collections;
  6.  
  7. public class Main {
  8.  
  9.  
  10.     public static void main(String[] args) {
  11.     // write your code here
  12.  
  13.         ArrayList<Person> personArrayList =new ArrayList<>();
  14.         Person p1 = new Person("Xerox","036",2);
  15.         Person p2 = new Person("ORange","126",20);
  16.         Person p3 = new Person("Apple","236",30);
  17.         Person p4 = new Person("Erko","536",50);
  18.  
  19.         personArrayList.add(p1);
  20.         personArrayList.add(p2);
  21.         personArrayList.add(p3);
  22.         personArrayList.add(p4);
  23.  
  24.  
  25.         NameComparator n = new NameComparator();
  26.         IDComparator id = new IDComparator();
  27.         AgeComparator ag = new AgeComparator();
  28.  
  29.         Collections.sort(personArrayList,n);
  30.  
  31.  
  32.       //  personArrayList.remove(p1);
  33.        // personArrayList.clear();
  34.  
  35.  
  36.  
  37.         for(Person a:personArrayList)
  38.             System.out.println(a);
  39.  
  40.     }
  41. }
  42.  
  43.  
  44.  
  45. package com.company;
  46.  
  47. /**
  48.  * Created by common on 12/13/2017.
  49.  */
  50. public class Person implements Comparable<Person>{
  51.  
  52.  
  53.     @Override
  54.     public int compareTo(Person o) {
  55.  
  56.  
  57.         return o.name.compareTo(this.name);
  58.     }
  59.  
  60.     String name;
  61.     String ID;
  62.     int age;
  63.  
  64.     public Person(String name, String ID, int age) {
  65.         this.name = name;
  66.         this.ID = ID;
  67.         this.age = age;
  68.     }
  69.  
  70.     public boolean equals(Object o){
  71.  
  72.         if(this == o)
  73.             return true;
  74.  
  75.         if(o.getClass() !=this.getClass()){
  76.  
  77.             return false;
  78.         }
  79.  
  80.         Person p =  (Person)o;
  81.  
  82.         return name.equals(p.name);
  83.     }
  84.  
  85.     public String toString(){
  86.  
  87.  
  88.         return  name+" "+ID+" "+age;
  89.     }
  90.  
  91. }
  92. package com.company;
  93.  
  94. import java.util.Comparator;
  95.  
  96. /**
  97.  * Created by common on 12/13/2017.
  98.  */
  99. public class NameComparator implements Comparator<Person> {
  100.  
  101.     @Override
  102.     public int compare(Person o1, Person o2) {
  103.         return o1.name.compareTo(o2.name);
  104.     }
  105. }
  106.  
  107. package com.company;
  108.  
  109. import java.util.Comparator;
  110.  
  111. /**
  112.  * Created by common on 12/13/2017.
  113.  */
  114. public class IDComparator implements Comparator<Person> {
  115.  
  116.     @Override
  117.     public int compare(Person o1, Person o2) {
  118.         return o1.ID.compareTo(o2.ID);
  119.     }
  120. }
  121.  
  122. package com.company;
  123.  
  124. import java.util.Comparator;
  125.  
  126. /**
  127.  * Created by common on 12/13/2017.
  128.  */
  129. public class AgeComparator implements Comparator<Person> {
  130.  
  131.  
  132.     @Override
  133.     public int compare(Person o1, Person o2) {
  134.         return o1.age- o2.age;
  135.     }
  136.  
  137.  public int hashCOde(){
  138.        
  139.         return name.hashCode();
  140.     }
  141.  
  142.  
  143. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement