Итак, я работаю над объектно-ориентированным проектом java, который занимается управлением нагрузками в транспортной компании. Путешествие имеет происхождение, местоположение, содержание и пункт назначения. Путешествие имеет один или несколько контейнеров, в которых можно отслеживать температуру, влажность и давление в контейнере. Итак, я хочу получить все данные о путешествии, в котором находился данный контейнер (история контейнера). Все контейнеры, используемые для любой данной поездки, хранятся в " containerList " (arraylist) этой поездки.
Таким образом, идея заключается в том, что метод " containerHistory " должен смотреть через arraylist " history " (который содержит завершенные поездки) и для каждого путешествия в массиве " history ", следует просмотреть список массивов " containerList " для каждого данного путешествия и для каждого контейнера в списке массивов " containerList " сравните идентификатор данного контейнера с тем, который мы ищем (который в приведенном ниже коде будет представлен строкой " search * 1016" * "
public ArrayList<Journey> containerHistory(String search, ArrayList<Journey> history){
ArrayList<Journey> containerhistorylist = new ArrayList<Journey>();
for(Journey j : history) {
for(Container c : j.getContainerList()) {
if (c.getContainerId().contentEquals(search)) {
containerhistorylist.add(j);
}
}
}
return containerhistorylist;
}
Любая идея о том, как улучшить этот код или альтернативный способ решения этой проблемы, будет принята с благодарностью.