Advertisement
Guest User

pastrani

a guest
Apr 19th, 2019
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.09 KB | None | 0 0
  1. import java.util.ArrayList;
  2. import java.util.Collection;
  3. import java.util.Collections;
  4. import java.util.Comparator;
  5. import java.util.List;
  6. import java.util.TreeSet;
  7.  
  8. class Persona implements Comparable<Persona> {
  9.     String name;
  10.  
  11.     Persona(String name) {
  12.         this.name = name;
  13.     }
  14.  
  15.     public int compareTo(Persona o) {
  16.  
  17.         Integer len = o.name.length();
  18.         Integer len1 = name.length();
  19.         return -len.compareTo(len1);
  20.  
  21.     }
  22.  
  23.     @Override
  24.     public int hashCode() {
  25.         final int prime = 31;
  26.         int result = 1;
  27.         result = prime * result + ((name == null) ? 0 : name.hashCode());
  28.         return result;
  29.     }
  30.  
  31.     @Override
  32.     public boolean equals(Object obj) {
  33.         if (this == obj)
  34.             return true;
  35.         if (obj == null)
  36.             return false;
  37.         if (getClass() != obj.getClass())
  38.             return false;
  39.         Persona other = (Persona) obj;
  40.         if (name == null) {
  41.             if (other.name != null)
  42.                 return false;
  43.         } else if (!name.equals(other.name))
  44.             return false;
  45.         return true;
  46.     }
  47.  
  48.     @Override
  49.     public String toString() {
  50.         return name;
  51.     }
  52.  
  53.     public String getName() {
  54.         return name;
  55.     }
  56.  
  57.     public void setName(String name) {
  58.         this.name = name;
  59.     }
  60.  
  61. }
  62.  
  63. public class chujemuje {
  64.  
  65.     public static void main(String[] args) {
  66.         TreeSet<Persona> set = new TreeSet<Persona>();
  67.         List<Persona> list = new ArrayList<Persona>();
  68.         Collections.sort(list, new Comparator<Persona>() {
  69.  
  70.             @Override
  71.             public int compare(Persona o1, Persona o2) {
  72.                 if (o2.name.length() > o1.name.length()) {
  73.                     return 1;
  74.                 } else if (o2.name.length() < o1.name.length()) {
  75.                     return -1;
  76.                 } else {
  77.                     return 0;
  78.                 }
  79.             }
  80.  
  81.         });
  82.    
  83.         addValues(list);
  84.         showValues(list);
  85.         System.out.println();
  86.         addValues(set);
  87.         showValues(set);
  88.  
  89.     }
  90.  
  91.     public static void showValues(Collection<Persona> col) {
  92.         for (Persona obj : col) {
  93.             System.out.println(obj.toString());
  94.         }
  95.     }
  96.  
  97.     public static void addValues(Collection<Persona> col) {
  98.         col.add(new Persona("ssdasdasda122"));
  99.         col.add(new Persona("Szmaiaadsasd"));
  100.         col.add(new Persona("cyz2"));
  101.         col.add(new Persona("siki2"));
  102.         col.add(new Persona("hui1223123"));
  103.     }
  104. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement