Advertisement
Guest User

Untitled

a guest
Nov 13th, 2019
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.18 KB | None | 0 0
  1. //karacsonyi hozzavalok orai
  2.  
  3. import java.util.*;
  4.  
  5. public class Main {
  6.     public static void main(String[] args) {
  7.         Scanner sc = new Scanner(System.in);
  8.         List<Hozzávalók> lista = new ArrayList<>();
  9.  
  10.         while (sc.hasNextLine()) {
  11.             String[] sor = sc.nextLine().split(";");
  12.             Hozzávalók h = new Hozzávalók(sor[0], Integer.parseInt(sor[1]));
  13.  
  14.             if (lista.contains(h)) {
  15.                 int idx = lista.indexOf(h);
  16.                 lista.get(idx).setMennyiseg(lista.get(idx).getMennyiseg() + Integer.parseInt(sor[1]));
  17.             } else {
  18.                 lista.add(new Hozzávalók(sor[0], Integer.parseInt(sor[1])));
  19.             }
  20.         }
  21.         Collections.sort(lista);
  22.  
  23.         for (Hozzávalók i : lista)
  24.             System.out.println(i);
  25.     }
  26. }
  27.  
  28. class Hozzávalók implements Comparable<Hozzávalók> {
  29.  
  30.         private String nev;
  31.         private int mennyiseg;
  32.  
  33.         public Hozzávalók(String nev, int mennyiseg) {
  34.             this.nev = nev;
  35.             this.mennyiseg = mennyiseg;
  36.         }
  37.  
  38.         public String getNev() {
  39.             return nev;
  40.         }
  41.  
  42.         public void setNev(String nev) {
  43.             this.nev = nev;
  44.         }
  45.  
  46.         public int getMennyiseg() {
  47.             return mennyiseg;
  48.         }
  49.  
  50.         public void setMennyiseg(int db) {
  51.             this.mennyiseg = db;
  52.         }
  53.  
  54.         @Override
  55.         public String toString() {
  56.             return this.nev + ";" + this.mennyiseg;
  57.         }
  58.  
  59.         @Override
  60.         public int compareTo(Hozzávalók o) {
  61.             if (this.mennyiseg != o.mennyiseg)
  62.                 return o.mennyiseg-this.mennyiseg;
  63.             else return this.nev.compareTo(o.nev);
  64.         }
  65.  
  66.         @Override
  67.         public boolean equals(Object obj) {
  68.             if (obj == null || !(obj instanceof Hozzávalók))
  69.                 return false;
  70.  
  71.             Hozzávalók h = (Hozzávalók) obj;
  72.  
  73.             return this.nev.equals(h.getNev());
  74.  
  75.         }
  76.  
  77.         @Override
  78.         public int hashCode() {
  79.             int hash = 5;
  80.             hash = 29 * hash + Objects.hashCode(this.nev);
  81.             return hash;
  82.         }
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement