Re: [問題] 一個關於RuntimeException的問題

看板java作者 (痞子軍團團長)時間17年前 (2008/04/04 18:23), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串2/2 (看更多)
故事背後的設定是這樣的 假設你把 Iterator 當作陣列來看 那麼,你有這麼一個陣列 wow = {x, y, z, oo} 一開始的時候,會有一個變數 index = 0,也就是指向 x 當你詢問 wow.hasNext() 的時候,會回答:有啦有啦 然後當你要求 wow.next() 的時候 wow 不但會把 x 丟給你,還會把 index++ 你在迴圈裡頭要了兩次 wow.next(),卻沒有每次檢查 wow.hasNext(); 萬一 wow 裡頭的元素不是偶數,你就掰掰啦... [茶] 是說... 我不是要刻意吐你曹 只是,這種東西,如果你的 (1) 你真的知道他在幹麼 或是對「為甚麼這樣子就會一直印出下一個」有過疑惑 那... 應該只會卡住兩個小時吧... ※ 引述《plankton (java很重概念T_T)》之銘言: : 故事是這樣的... : 我有一個 HashMap<String,Vector> 叫做 "hash" : 我想知道hash裡面的key有哪些... : 於是我使用了 Set please = hash.keySet()這個方法 : 因為我想要印出來做檢查..所以...我又再用了 iterator() 這個方法 : 所以狀況如下 : for (Iterator wow=please.iterator();wow.hasNext();) : { : System.out.println((String)wow.next()); ------(1) : } : 很好..它可以 把 hash 的 key一個個print出來 : 但是..當我在for迴圈裡面再多一行....的時候(下面) : String what = (String)wow.next(); ------------(2) : 程式跑到一半就當..當..當..當..了 : (1)和(2)意思不是一樣嗎? 我實在是不懂 為什麼(1)可以 再多加(2)就不行 : 我的RuntimException如下 : Excepion in thread "AWT-EventQueue-0" java.util.NoSuchElementException : at java.util.HashMap$HashIterator.nextEntry(HashMap.java:796) : at java.util.HashMap$HashIterator.next(HashMap.java:828) : at OpenKgml.endDocument(Dia.java:331) : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 這就是我加(2)的地方 : 然後我查過書上寫說...NoSuchElementException : "是一個容器類別物件中的元素查詢失敗" @_@ : 失敗....?那(1)怎麼會成功...(2)又為什麼會失敗 囧 : 我卡關卡了快三天了 : 可以請問各位大大能不能給點提示 T__T : 感激不盡 -- 侃侃長論鮮窒礙 首頁:http://www.psmonkey.idv.tw 眾目睽睽無心顫 Blog:http://ps-think.blogspot.com 煢居少聊常人事 殺頭容易告白難 歡迎參觀 Java 版(@ptt.cc)精華區 \囧/ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.228.199.163

04/04 18:44, , 1F
真不好意思卡關卡這麼久 Q__Q 謝謝你了 版大..
04/04 18:44, 1F

04/04 18:47, , 2F
吐曹一點都沒關係 感謝
04/04 18:47, 2F
文章代碼(AID): #17zW6pOJ (java)
文章代碼(AID): #17zW6pOJ (java)