Re: [問題] class變數存取問題

看板java作者 (骨頭)時間19年前 (2006/03/15 21:44), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串14/17 (看更多)
※ 引述《PsMonkey (痞子軍團團長)》之銘言: : ※ 引述《TonyQ (骨頭)》之銘言: : : 是啊 是這樣沒錯 : : 那我們的討論差不多就可以到這裡打個段落了吧XD : 可是你沒有回答我關於這段的問題 你這段只有講到Comparator的用法 說的很正確啊 XD 那還有甚麼問題啊?? : //引言開始 : : Comparator主要是給容器用的吧 (也就是List) : : 而Comparable應該是給被容納的東西去implement的吧 (也就是object) : //引言結束 : 我覺得這樣子的觀念不對,所以才會寫上一篇文章 : 然後你回文章的時候就一路說 "對~ 就是這樣子" 然後就說結束討論 : 我覺得很 Orz 阿 我怎麼開始有一種雞同鴨講的感覺 -.- 我的意思, 以TreeSet的例子來講 Comparator給誰用的 給TreeSet去用的啊 (容器) Comparable是誰去implement ? 是Object去implement (被容納的東西) 你有看過TreeSet implement comparable 或Object 建Comparator的嗎 XD 至少就API裡面好像沒有XD 可是TreeSet跟TreeMap倒是都有Comparator的建構子, 而常用的Object也幾乎都implements Comparable XD : : ---------- : : //此時因為找不到compare,所以產生java.lang.ClassCastException: : : ----------------------------------------------------------------- : : <解一> : : 這是因為Person並沒有implement Comparable的關係,如果 : : Person也去implement Comparable就可以解決了。 : : 比方說在Person內加上類似這段程式碼這樣的東西就ok了 : 挑語病... : 這邊應該要講: : Person 去 implement Comparable 然後加上類似這段程式碼就 OK 了 : 不然,怎麼覺得兩句沒有直接關係 : : TreeSet Default的Comparator規則到底是甚麼啊 : : 可惡 剛剛翻半天文件 翻不到只好蠻力硬幹XD : default? 就是物件本身的 Comparable 的 compareTo 阿... : 不然怎麼會出現 ClassCastException? 那時候翻各物件的compareto 幾乎都只支援同型的比較XD (比方說Integer的就只能跟 Integer的比較) 所以後來乾脆都用String去做比較 管它的~XD 現在想想 可能該先轉型成 Comprable再寫compareTo 沒實做不知道 XD -- Local -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.138.240.58
文章代碼(AID): #1461fQF7 (java)
討論串 (同標題文章)
文章代碼(AID): #1461fQF7 (java)