сначала это задание, поэтому я больше ищу помощь, затем закодированные ответы (не хочу обманывать!). Мое задание - создать программу, которая обрабатывает железнодорожную/железнодорожную сеть станций. Раздел, в котором я застрял, добавляет станции, их соединения и возвращает эти соединения в виде массива строк. Я включил ниже код, который у меня есть, а также извлечение из задания (связанное с разделом, в котором я сейчас). Я пробовал этот бит на всех выходных, поэтому любая помощь была бы чрезвычайно оценена.HashMap как ArrayList of Strings
Это только реализация интерфейса, который мне нужно изменить, класс «MyNetwork». Я просто чувствую, что я собираюсь в кругах, и, возможно, даже не смог подняться на правую ногу?
От присвоения;
Создать класс MyNetwork, который реализует сетевой интерфейс.
Метод getConnections этого класса должен возвращать массив, содержащий только те станции, которые напрямую связаны с аргументом fromStation. Подсказка 1: вы можете сделать это с помощью HashMap, причем клавишами являются строки (представляющие станции), а значения - ArrayLists of Strings (представляющие станции, к которым есть прямое соединение).
Подсказка 2: Хотя метод getConnections возвращает массив строк, было бы лучше для значений в HashMap, чтобы быть ArrayLists строк
Интерфейс;
public interface Network {
/**
* Add a station to the network.
* @param station The station to be added.
*/
public void addStation(String station);
/**
* Add a direct connection from one station to another.
* @pre both fromStation and toStation have already been added by the method
* addStation.
* @param fromStation The station from which the connection begins.
* @param toStation The station at which the connection ends.
*/
public void addConnection(String fromStation, String toStation);
/**
* Get a list of all stations directly connected to a given station.
* @pre fromStation has been added to the network by the method addStation.
* @param fromStation
* @return A list of all the stations to which there is a direct connection
* from fromStation.
*/
public String[] getConnections(String fromStation);
/**
* Search for a station in the network.
* @param station Station to be searched for,
* @return true if the Station exists in the network, false otherwise.
*/
public boolean hasStation(String station);
/**
* Get all stations in the network.
* @return An array containing all the stations in the network, with no
* duplicates.
*/
public String[] getStations();
по выполнению:
public class MyNetwork implements Network {
@Override
public void addStation(String station) {
ArrayList<String> Stations = new ArrayList<>();
Stations.add(station);
}
@Override
public void addConnection(String fromStation, String toStation) {
Map<String,String> Connections = new HashMap<>();
Connections.put(fromStation, toStation);
}
@Override
public String[] getConnections(String fromStation) {
return null; // dummy value!
}
@Override
public boolean hasStation(String station) {
return false; // dummy value!
}
@Override
public String[] getStations() {
return null; // dummy value!
}
}
Просто для ясности, «станции» будут считаны в программу, используя входной поток, но это следующий шаг этого задания. Еще раз спасибо! – JavaStarta