Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CAR
- package softUniParking;
- public class Car {
- private String make;
- private String model;
- private int horsePower;
- private String registrationNumber;
- public Car(String make, String model, int horsePower, String registrationNumber) {
- this.make = make;
- this.model = model;
- this.horsePower = horsePower;
- this.registrationNumber = registrationNumber;
- }
- public String getMake() {
- return this.make;
- }
- public String getModel() {
- return this.model;
- }
- public int getHorsePower() {
- return this.horsePower;
- }
- public String getRegistrationNumber() {
- return this.registrationNumber;
- }
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append(String.format("Make: %s\n",this.make));
- sb.append(String.format("Model: %s\n",this.model));
- sb.append(String.format("HorsePower: %d\n",this.horsePower));
- sb.append(String.format("RegistrationNumber: %s",this.registrationNumber));
- return sb.toString().trim();
- }
- }
- PARKING
- package softUniParking;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- public class Parking {
- private Map<String, Car> cars;
- private int capacity;
- public Parking(int capacity) {
- this.cars = new HashMap<>();
- this.capacity = capacity;
- }
- public String addCar(Car car) {
- if (this.cars.containsKey(car.getRegistrationNumber())) {
- return "Car with that registration number, already exists!";
- } else if (this.cars.size() == this.capacity) {
- return "Parking is full!";
- }
- this.cars.putIfAbsent(car.getRegistrationNumber(), car);
- return String.format("Successfully added new car %s %s", car.getMake(), car.getRegistrationNumber());
- }
- public String removeCar(String registrationNUmber) {
- if (!this.cars.containsKey(registrationNUmber)) {
- return "Car with that registration number, doesn't exists!";
- }
- this.cars.remove(registrationNUmber);
- return String.format("Successfully removed %s", registrationNUmber);
- }
- public Car getCar(String registrationNUmber) {
- return this.cars.get(registrationNUmber);
- }
- public int getCount() {
- return this.cars.size();
- }
- public void removeSetOfRegistrationNumber(List<String> regNums) {
- for (String regNum : regNums) {
- this.removeCar(regNum);
- }
- }
- }
- MAIN
- package softUniParking;
- import java.util.ArrayList;
- import java.util.List;
- public class Main {
- public static void main(String[] args) {
- //Initialize the Parking
- Parking parking = new Parking(5);
- //Initialize Car
- Car car = new Car("Skoda", "Fabia", 65, "CC1856BG");
- //Initialize second Car object
- Car car2 = new Car("Audi", "A3", 110, "EB8787MN");
- System.out.println(car.toString());
- //Make: Skoda
- //Model: Fabia
- //HorsePower: 65
- //RegistrationNumber: CC1856BG
- System.out.println(parking.addCar(car));
- //Successfully added new car Skoda CC1856BG
- System.out.println(parking.addCar(car));
- //Car with that registration number, already exists
- System.out.println(parking.addCar(car2));
- //Successfully added new car Audi EB8787MN
- System.out.println(parking.getCar("EB8787MN").toString());
- //Make: Audi
- //Model: A3
- //HorsePower: 110
- //RegistrationNumber: EB8787MN
- System.out.println(parking.removeCar("EB8787MN"));
- //Successfullyremoved EB8787MN
- //Initialize listOfRegistrationNumbers
- List<String> regNums = new ArrayList<>();
- //add two registrationNumbers
- regNums.add("EB8787MN");
- regNums.add("invalid");
- // call method removeSetOfRegistrationNumber with our list
- parking.removeSetOfRegistrationNumber(regNums);
- System.out.println(parking.getCount()); //1
- System.out.println();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement