Мне интересно, какой лучший дизайн для этой проблемы. У меня есть объект , который имеет ArrayList<Episode>
, который содержит каждый эпизод в сезоне для данного телешоу. Теперь, допустим, я хочу найти эпизод 25 данного сезона для данного телешоу. Является ли следующий дизайн подходящим (бросая исключение) или было бы лучше создать объект в состоянии ошибки, вернуть его и позволить вызывающему методу определить, что не так?Возвращаемое значение в методе геттера, если объект не найден
public class Season {
public Episode GetEpisode(int ep_no) throws Exception {
for(Episode ep : episodes)
if(ep.GetEpisodeNumber() == ep_no) return ep;
throw(new Exception("Episode not found."));
}
private ArrayList<Episode> episodes;
}
у вас должен быть словарь .. и выбросить собственное исключение вместо общего исключения – nachokk
как насчет того, чтобы просто вернуть нуль – aaronman
Почему вы повторяете «эпизоды», чтобы проверить, существует ли 'ep_no', и не проверять размер' episodes'? – vidit