Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package jtp;
- public class Seat {
- private boolean occupied;
- public Seat(Boolean occupied) {
- this.occupied = occupied;
- }
- public boolean isOccupied() {
- return occupied;
- }
- }
- ------------------------------------------------------
- package jtp;
- import java.util.ArrayList;
- public class Waggon {
- ArrayList<Seat> seats;
- public Waggon(ArrayList<Seat> seats) {
- this.seats = seats;
- }
- public ArrayList<Seat> getSeats() {
- return seats;
- }
- }
- ------------------------------------------------------
- package jtp;
- import java.util.ArrayList;
- public class Train {
- private ArrayList<Waggon> waggons;
- public Train(ArrayList<Waggon> waggons) {
- this.waggons = waggons;
- }
- public ArrayList<Seat> freeSeats() throws NoWaggons, NoSeats {
- ArrayList<Seat> free = new ArrayList<>();
- if (waggons.isEmpty()) throw new NoWaggons("Nie ma wagonow");
- for (Waggon waggon: waggons) {
- if (waggon.getSeats().isEmpty()) throw new NoSeats("Nie ma miejsc");
- for (Seat seat: waggon.getSeats()) {
- if (!seat.isOccupied()) {
- free.add(seat);
- }
- }
- }
- return free;
- }
- }
- --------------------------------------------------------------------
- package jtp;
- public class NoSeats extends Exception {
- public NoSeats(String message) {
- super(message);
- }
- }
- ---------------------------------------------------------------------
- package jtp;
- public class NoWaggons extends Exception{
- public NoWaggons(String message) {
- super(message);
- }
- }
- --------------------------------------------------------------------
- package jtp;
- import java.util.ArrayList;
- public class Main {
- public static void main(String[] args) {
- ArrayList<Seat> tmpSeat = new ArrayList<>();
- for (int i = 0; i < 10; i++) {
- if (i % 2 == 0) {
- tmpSeat.add(new Seat(false));
- }
- else {
- tmpSeat.add(new Seat(true));
- }
- }
- ArrayList<Waggon> tmpWaggon = new ArrayList<>();
- tmpWaggon.add(new Waggon(tmpSeat));
- Train train = new Train(tmpWaggon);
- try {
- ArrayList<Seat> tmpFreeSeats = train.freeSeats();
- for (Seat seat: tmpFreeSeats) {
- System.out.println(seat.isOccupied());
- }
- }
- catch (NoWaggons | NoSeats e) {
- e.getMessage();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement