我在想這個問題的最佳設計是什麼。我有一個Season
對象,其中包含一個ArrayList<Episode>
,其中包含給定電視節目的一個季節中的每一集。現在讓我們假設我想要在給定的電視節目中搜索給定季節的第25集。下面的設計是否合適(拋出一個Exception)還是最好在錯誤狀態下創建一個對象,然後返回並讓調用方法出現錯誤?如果找不到對象,則返回getter方法的值
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
剛剛返回null – aaronman
爲什麼你迭代'episodes'來檢查'ep_no'是否存在,而不是檢查' episodes'? – vidit