Advertisement
zsoltizbekk

szervezzetek szervezetet

Oct 26th, 2015
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.05 KB | None | 0 0
  1. import java.util.Arrays;
  2. import java.util.Scanner;
  3.  
  4. class Szervezet implements Comparable<Szervezet>{
  5.     private final String név;
  6.     private final int alapításÉve;
  7.    
  8.     public Szervezet (String név, int alapításÉve){
  9.         this.név = név;
  10.         this.alapításÉve = alapításÉve;
  11.     }
  12.  
  13.     @Override
  14.     public String toString() {
  15.         StringBuilder sb = new StringBuilder();
  16.         sb.append(név).append(" (alapítva: ").append(alapításÉve).append(")");
  17.         return sb.toString();
  18.     }
  19.  
  20.     @Override
  21.     public int compareTo(Szervezet t) {
  22.         if (this.alapításÉve > t.alapításÉve)
  23.             return 1;
  24.         else if (this.alapításÉve < t.alapításÉve)
  25.             return -1;
  26.         else return this.név.compareTo(t.név);
  27.     }
  28. }
  29.  
  30. class Egyesület extends Szervezet{
  31.     private final boolean közhasznú;
  32.  
  33.     public Egyesület(String név, int alapításÉve, boolean közhasznú) {
  34.         super(név, alapításÉve);
  35.         this.közhasznú = közhasznú;
  36.     }
  37.  
  38.     @Override
  39.     public String toString() {
  40.         StringBuilder sb = new StringBuilder();
  41.         sb.append(super.toString()).append(": ");
  42.         if (közhasznú)
  43.             sb.append("közhasznú");
  44.         else
  45.             sb.append("nem közhasznú");
  46.         return sb.toString();
  47.     }
  48. }
  49.  
  50. public class Main {
  51.  
  52.     public static void main(String[] args) {
  53.         Scanner sc = new Scanner(System.in);
  54.         int szam = Integer.parseInt(sc.nextLine());
  55.         Szervezet[] szervezetek = new Szervezet[szam];
  56.         for (int i = 0; i < szam; i ++){
  57.             String[] line = sc.nextLine().split(";");
  58.             if (line[0].equals("Sz"))
  59.                 szervezetek[i] = new Szervezet(line[1], Integer.parseInt(line[2]));
  60.             else
  61.                 szervezetek[i] = new Egyesület(line[1], Integer.parseInt(line[2]), line[3].equals("+"));
  62.         }
  63.         Arrays.sort(szervezetek);
  64.         for (Szervezet sz : szervezetek){
  65.             System.out.println(sz);
  66.         }  
  67.     }
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement