看板 java 關於我們 聯絡資訊
寫了一個簡單的stack implementation 這個stack是固定size的 當stack滿的時候,若是user還想要push東西進去時 我就拋一個exception出來 但是Java中我找不到相對應的Exception可以用 同理,我寫了一個heap implementation 也是fixed size 也遇到一樣的問題 請問有人能跟我說這種異常要用哪種才對 還是得自己在寫一個exception的class -- 我用一麻袋的錢上學,換了一麻袋書;畢業了,用這些書換錢,卻買不起一個麻袋! --引用自大陸某高考零分作文 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 73.76.182.161 ※ 文章網址: https://www.ptt.cc/bbs/java/M.1478939557.A.E00.html
ssccg: IllegalStateException 11/12 17:49
pttworld: IndexOutOfBoundsException 11/12 20:09
ssccg: Collection.add https://goo.gl/sb5fWB 11/13 00:14
ssccg: List.add(int, E) https://goo.gl/mzD9o1 11/13 00:15
ssccg: IndexOutOfBounds是用在參數有index,但輸入值在範圍外時 11/13 00:15
ssccg: 以Collection列的那些就IllegalState符合吧 11/13 00:24
ssccg: 不然就是自己生一個了,BufferOverflowException其實滿合的 11/13 00:29
ssccg: 但是在nio package 11/13 00:29
ripple0129: 不就先不要catch讓它跳exception就知道預設是那個了 11/13 04:15
ssccg: 自己的implementation怎麼會有預設的.. 11/13 04:50
ssccg: 當然如果是用固定size的array然後不檢查range的實作方式的 11/13 04:50
ssccg: 話那當然就會是IndexOutOfBounds 11/13 04:50
pttworld: 使用array實作,一個變數當size。ary[sz] = push object 11/13 10:40
pttworld: 實作在這一行就會爆例外。 11/13 10:41
pttworld: 原po是自己的實作想借用既有的例外,沒說明實作的儲存。 11/13 10:44
ssccg: 其實用什麼都沒差,javadoc寫清楚就好... 11/13 12:10
ripple0129: 既有的隨便吧不然要清楚點自己寫個PopIndexOutOfRange 11/13 18:10
ripple0129: ,這種東西使用的人看的懂比什麼都重要 11/13 18:10
phycheout: illegalSatateException不錯,蠻符合語意的,感謝! 11/14 06:24