Java开发网 |
注册 |
登录 |
帮助 |
搜索 |
排行榜 |
发帖统计
|
您没有登录 |
» Java开发网 » Java SE 综合讨论区
打印话题 寄给朋友 订阅主题 |
话题被移动 | ||
该话题已被移动 - why , 2003-05-15 20:25 如果您尚不清楚该话题被移动的原因,请参考论坛规则以及本版公告或者联系本版版主。 |
作者 | Re:挑战各路JAVA好杰 -- 求最大值:max [Re:nullbi] |
rainman
阿熊 元老 发贴: 5644 积分: 454 |
于 2003-03-23 02:07
Java里是这样子的: max = Math.max(a,b) 蛮优雅。 |
作者 | Re:挑战各路JAVA好杰 -- 求最大值:max [Re:nullbi] |
why
問題兒童 总版主 发贴: 4629 积分: 388 |
于 2003-03-23 09:08
> 如果我没有记错的话,C++应该是生于1970年代 看怎麼定義「生於」吧。 C 是生於1970年代,而 C++ class 的概念則源自更古早的 Simula67,operator loading 則源自 Algol68,Exception handling 則是1970前後的 Ada 、Clu 和較近期的 ML。純粹從概念的成立而言,C++可算是1970年代的。 但現實中 C++ 的前身,C with classes 應是 1980年後的事,C++ 在1983年才正式出現。 > Java里是这样子的: > max = Math.max(a,b) nullbi 所指的是 macro (= 宏?) 的 max,即 #define max(a, b) ((a) > (b) ? (a) : (b)) 或 generic, template form, 例如 template <class T> T& max(T& lhs, T& rhs) { return lhs > rhs ? lhs : rhs; } Java 沒有 macro,generic 要到 Java 1.5 才可能有,而且和 C++ 的 template 分別不少。而且 Java 也沒有 operator loading,所以不太可能那樣簡潔的 max 和 min,但問題是,有這個需要嗎? 程式語言需要優雅但複雜,還是簡明且實用呢? Scott Meyers 的 "min, max and more“: http://aristeia.com/Papers/C++ReportColumns/jan95.pdf |
作者 | Re:挑战各路JAVA好杰 -- 求最大值:max [Re:software_young] |
rainman
阿熊 元老 发贴: 5644 积分: 454 |
于 2003-03-24 01:52
software_young wrote: JGL???? 不知道你是不是真懂哦,JGL只是一个第三方使用STL风格的写法的通用容器和算法类库(现在已经是收费的了,所以我不用)。Java现在已经有Generic的扩展了,做得最好的是:GJ: Generic Java, http://www.research.avayalabs.com/user/wadler/gj/ ,JDK里的容器类库已经全部用GJ重新实现了,来验证泛型Java的健壮,效率。 To nullbi:你可以在上面网站下载源代码来看GJ代码是否优雅。因为使用GJ对JVM不做任何要求,而且GJ Team做得足够好了,所以JDK1.5是否要包括Generic才被提到日程上来讨论。 再回到Max的问题上来: 比如求一个List里元素的最大值, GJ可以这样写:
在调用Collections.max(xs)的时候,编译器会检查出参数是class Byte且作了 bound Comparable<Byte>。而调用Collections.max(xs)时的参数是class Boolean,但它并没作bound Comparable<Boolean>。本来在Java 运行期的时候原本會因此抛出异常,但GJ在编译期就指出来了,健壮性加强了!
rainman edited on 2003-03-24 09:48
|
作者 | Re:挑战各路JAVA好杰 -- 求最大值:max [Re:nullbi] |
nullbi
发贴: 0 积分: 0 |
于 2003-03-25 11:09
另外, 为了不让我们的话题走得太远, 需要说明: max求的就是两者之间的最大者, 找一个list中最大的元素这样的问题我们先放着不谈. |
作者 | Re:挑战各路JAVA好杰 -- 求最大值:max [Re:nullbi] |
jacob
Simple is the best! 发贴: 221 积分: 20 |
于 2003-03-28 13:25
他不理解,说了也白说 Thinking with head, Feeling with heart! |
作者 | Re:挑战各路JAVA好杰 -- 求最大值:max [Re:nullbi] |
nullbi
发贴: 0 积分: 0 |
于 2003-04-04 12:05
久没上来, 先粘一帖: 微软C#语言有望标准化 下一代互联网较劲Java http://www.csdn.net/news/newstopic/10/10403.shtml |
作者 | Re:挑战各路JAVA好杰 -- 求最大值:max [Re:nullbi] |
mochow
Mary有只小山羊咿呀咿 发贴: 339 积分: 40 |
于 2003-04-04 21:58
nullbi如果真想明白前面的人在说什么,还是看看有关 java接口和多态性的有关资料吧 |
作者 | Re:挑战各路JAVA好杰 -- 求最大值:max [Re:nullbi] |
nullbi
发贴: 0 积分: 0 |
于 2003-04-13 11:26
java的同志有些可爱, 怕我不明白各位的思想, 老催我去补接口和多态性的课 |
已读帖子 新的帖子 被删除的帖子 |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |