作者PsMonkey (痞子军团团长)
站内java
标题Re: [问题] class变数存取问题
时间Wed Mar 15 22:28:40 2006
※ 引述《TonyQ (骨头)》之铭言:
: ※ 引述《PsMonkey (痞子军团团长)》之铭言:
: 我怎麽开始有一种鸡同鸭讲的感觉 -.-
: 我的意思,
: 以TreeSet的例子来讲
: Comparator给谁用的 给TreeSet去用的啊 (容器)
: Comparable是谁去implement ? 是Object去implement (被容纳的东西)
: 你有看过TreeSet implement comparable
: 或Object 建Comparator的吗 XD
: 至少就API里面好像没有XD
: 可是TreeSet跟TreeMap倒是都有Comparator的建构子,
: 而常用的Object也几乎都implements Comparable XD
请注意一下,Comparator 没有要 "给谁用"
他只是提供一个方便抽换的方法
TreeSet 也好,Arrays.sort 也好
不提供 Comparator 可不可以? 当然可以...
运作起来依然正常...
只要里头的物件都有 implement Comparable 就好
没有也没关系,大不了丢出 ClassCastException
(就算你给他 Comparator,一样还是可能出现 ClassCastException 阿)
: : default? 就是物件本身的 Comparable 的 compareTo 阿...
: : 不然怎麽会出现 ClassCastException?
: 那时候翻各物件的compareto 几乎都只支援同型的比较XD
: (比方说Integer的就只能跟 Integer的比较)
: 所以後来乾脆都用String去做比较 管它的~XD
: 现在想想 可能该先转型成 Comprable再写compareTo
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
这句话又是什麽意思 T__T
: 没实做不知道 XD
[举手] 不同型之间为什麽要让他们比较? ==.==
如果你要讨论可不可行... 那... 一定可行的
你的 toString() 硬干法就是经典
问题是... 为什麽要这麽作? T___T
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 203.204.16.17
※ 编辑: PsMonkey 来自: 203.204.16.17 (03/15 22:28)