Scala 本來就可以完全融合 Java APIs, 故沒何任理由, 要惕除您原有累積的 Java Know-How, 相對的 Scala 讓您更正視看待對 JRE/JVM 性能要求. Class java.lang.Object 定义了一个 equals 方法,其中的子类可以进行改写(override)。不幸的是,最终的结果表明,在面向对象语言中,编写正确的等值方法相当困难。事实上,在对 Java 代码的大量正文进行研究之后,几位作者在 2007 年的一份论文中作出如下结论:几乎所有 equals 方法的实现都是错误的。这是一个严重的问题,因为等值方法是很多代码的根本。 Chapter 8 通用程序設計(General Programming)Item 46: foreach 迴圈優先傳統(for)迴圈VS. for-each 迴圈優先於傳統(for)迴圈 - Effective Java, Item 46: Prefer for-each loops to traditional for loops
Item 49: 創建實例時偏好 val 優先於 var VS. 基本型別優先於基本型別裝箱的類別 - Effective Java, Item 49: Prefer primitive types to boxed primitives.
Item 50: 如果其它類型更適合, 應盡可能避開使用 String. (EJ)
|