Сравнивая строки для базы данных полета? - PullRequest
0 голосов
/ 05 апреля 2020

Моей задачей было создать список рейсов с помощью ArrayList. Я создал класс Main, класс Flight и класс FlightDatabase, а в FlightDatabase я добавил несколько новых рейсов с вылетом и массивом Strings в ().

Я должен был создать метод в этом классе, который проверяет, существует ли искомый полет. Вся цель состояла в том, чтобы попрактиковаться в использовании метода .equals со строками. Проблема в том, что я не знаю, как все это кодировать вместе, моя идея состоит в том, чтобы создать метод, который берет переменные String из конструктора класса Flight и сравнивает их со строками, добавленными в ArrayList of Flight в классе FlightDatabase. Не знаю, как этого добиться.

Вот что я уже сделал. Не работает так, как я хотел, я даже знаю почему, но я не знаю, как заставить это работать.

import java.util.ArrayList;

public class FlightDatabase {
    ArrayList<Flight> flights = new ArrayList<Flight> ();

    public FlightDatabase ( ) {
        this.flights.add ( new Flight ( "Wroclaw", "Berlin" ) );
        this.flights.add ( new Flight ( "Warsaw", "Poznan" ) );
        this.flights.add ( new Flight ( "Krakow", "Vienna" ) );
        this.flights.add ( new Flight ( "Wroclaw", "Rotterdam" ) );
        this.flights.add ( new Flight ( "Warsaw", "Moscow" ) );
        this.flights.add ( new Flight ( "Wroclaw", "Frankfurt" ) );
        this.flights.add ( new Flight ( "Warsaw", "London" ) );
        this.flights.add ( new Flight ( "Krakow", "Paris" ) );
    }

    public void checkIfFlightExists (String departure, String arrival ) {
        for(int i = 0; i < flights.size (); i++) {
            Flight check = flights.get ( i );
            if (departure.equals ( check ) && arrival.equals ( check )){
                System.out.println ("there is such flight");


            }else {
                System.out.println ("No such flight sorry");
            }
        }


    }
}
...