Guest User

Untitled

a guest
Jan 21st, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.50 KB | None | 0 0
  1. /*************************************CarRegister.java*************************************/
  2.  
  3. package carRegister;
  4.  
  5. import java.io.*;
  6. import java.util.ArrayList;
  7. import java.util.Comparator;
  8. import java.util.Collections;
  9.  
  10. public class CarRegister{
  11.     public static void main(String[] args) throws IOException, Throwable {
  12.         ArrayList<Car> kocsi = new ArrayList<Car>();
  13.         InputStreamReader isr = new InputStreamReader(System.in);
  14.         BufferedReader br = new BufferedReader(isr);
  15.        
  16.     theloop:while(true){
  17.             String line = br.readLine();
  18.             String[] splited = line.split(" ");
  19.            
  20.             /***********************************3. feladat**********************************/
  21.             /***********************************Add hozzá***********************************/
  22.             if (splited[0].equals("add")){
  23.                 kocsi.add(new Car(splited[1],splited[2],Integer.parseInt(splited[3])));
  24.             }
  25.            
  26.             /***********************************3. feladat**********************************/
  27.             /************************************Listázd************************************/
  28.             else if(splited[0].equals("list")){
  29.                 if (splited.length==1) {    System.out.println("Lista:");   }
  30.             /***********************************5. feladat**********************************/
  31.             /********************************Rendezve listázd*******************************/
  32.                 else if (splited[1].equals("plate")) {
  33.                     Comparator c = new PlateComparator();
  34.                     Collections.sort(kocsi, c);
  35.                     System.out.println("Rendszám szerint rendezett lista:");
  36.                    
  37.                 }
  38.                 else if (splited[1].equals("brand")) {
  39.                     Comparator c = new BrandComparator();
  40.                     Collections.sort(kocsi, c);
  41.                     System.out.println("Típus szerint rendezett lista:");
  42.                 }
  43.                 else if (splited[1].equals("year")) {
  44.                     Comparator c = new YearComparator();
  45.                     Collections.sort(kocsi, c);
  46.                     System.out.println("Évjárat szerint rendezett lista:");
  47.                 }
  48.                
  49.                 for(int i = 0; i < kocsi.size(); ++i)
  50.                     System.out.println(kocsi.get(i).get());
  51.             }
  52.            
  53.             /***********************************4. feladat**********************************/
  54.             /***********************************Mentsd el***********************************/
  55.             else if(splited[0].equals("save")){
  56.                 if (splited.length>1) {
  57.                     ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(splited[1]));
  58.                     out.writeObject(kocsi);
  59.                     out.close();
  60.                 }
  61.                 else System.out.println("Nem adott meg nevet!");
  62.             }
  63.            
  64.             /***********************************4. feladat**********************************/
  65.             /***********************************Töltsd be***********************************/
  66.             else if(splited[0].equals("load")){
  67.                 if (splited.length>1) {
  68.                     try {
  69.                         ObjectInputStream in = new ObjectInputStream(new FileInputStream(splited[1]));
  70.                         kocsi = (ArrayList<Car>)in.readObject();
  71.                         in.close();
  72.                     } catch (IOException e) { System.out.println("Nem létező fájl!"); }
  73.                 }
  74.                 else System.out.println("Nem adott meg nevet!");
  75.             }
  76.            
  77.             /***********************************6. feladat**********************************/
  78.             /***********************************Töröld ki***********************************/
  79.             else if (splited[0].equals("delete")){
  80.                 if (splited.length>1) {
  81.                     Comparator c = new PlateComparator();
  82.                     int index = Collections.binarySearch(kocsi, new Car (splited[1].toUpperCase(),"",0), c);
  83.                     if (index>=0) kocsi.remove(index);
  84.                     else System.out.println("Nincs ilyen rendszámú autó");
  85.                 }
  86.                 else System.out.println("Nem adott meg rendszámot!");
  87.             }
  88.            
  89.             /************************************Lépj ki************************************/
  90.             else if(splited[0].equals("exit")){
  91.                 break theloop;
  92.             }
  93.         }
  94.     }
  95. }
  96.  
  97. /*****************************************Car.java*****************************************/
  98.  
  99. package carRegister;
  100.  
  101. import java.io.Serializable;
  102.  
  103. public class Car implements Serializable {
  104. /***********************Adatok***********************/
  105.     private static final long serialVersionUID = 1L;
  106.     protected String plate;
  107.     protected String brand;
  108.     protected int year;
  109.    
  110. /*********************Függvények*********************/
  111.     public Car() {
  112.         plate ="abc123";
  113.         plate = plate.toUpperCase();
  114.         brand = "Ford";
  115.         year = 2000;
  116.     }
  117.     public Car(String p, String b, int y) {
  118.         plate = p;
  119.         plate = plate.toUpperCase();
  120.         brand = b;
  121.         year = y;
  122.     }
  123.     public String get() {
  124.         return plate + " " + brand + " " + year;
  125.     }
  126.    
  127.     public String getPlate() {
  128.         return this.plate;
  129.     }
  130.     public int getYear() {
  131.         return year;
  132.     }
  133.     public String getBrand() {
  134.         return brand;
  135.     }
  136. }
  137.  
  138. /***********************************BrandComparator.java***********************************/
  139.  
  140. package carRegister;
  141.  
  142. import java.util.Comparator;
  143.  
  144. public class BrandComparator implements Comparator<Car> {
  145.     public int compare(Car o1, Car o2) {
  146.         return o1.getBrand().compareTo(o2.getBrand());
  147.     }
  148. }
  149.  
  150. /***********************************PlateComparator.java***********************************/
  151.  
  152. package carRegister;
  153.  
  154. import java.util.Comparator;
  155.  
  156. public class PlateComparator implements Comparator<Car> {
  157.     public int compare(Car o1, Car o2) {
  158.         return o1.getPlate().compareTo(o2.getPlate());
  159.     }
  160. }
  161.  
  162. /************************************YearComparator.java***********************************/
  163.  
  164. package carRegister;
  165.  
  166. import java.util.Comparator;
  167.  
  168. public class YearComparator  implements Comparator<Car>{
  169.     public int compare(Car o1, Car o2) {
  170.         if (o1.getYear()>o2.getYear()) return 1;
  171.         if (o1.getYear()<o2.getYear()) return -1;
  172.         return 0;
  173.     }
  174. }
Add Comment
Please, Sign In to add comment