理论教育 Scala和Java的对比与差异

Scala和Java的对比与差异

时间:2023-06-14 理论教育 版权反馈
【摘要】:许多Scala 的特性和语法都是针对Java 的不足和弱点来设计的。比如:5. Scala 没有提供break 和continue 来退出循环。

Scala和Java的对比与差异

许多Scala 的特性和语法都是针对Java 的不足和弱点来设计的。

1. Scala 语句结束、}、else 及类似的位置不需要分号结尾,只需要能够从上下文判断这里是语句终止即可。如果在单行写下多个语句,就需要分号将这些语句隔开。如:

if(x > 0) { a = x*x ; x += 1}

通过分号将a = x*x 和x+= 1 语句隔开,当然也可以通过语句换行将分号去掉。

2. Scala 不需要声明变量的具体类型,只需要声明是var(变量)或val(常量),由编译器自动判断。而Java 需要声明具体类型,比如int,String。

3. Scala 函数定义需def 开头。

4. Scala 函数声明返回值可以不用return,直接在最后写返回变量或常量即可。比如:

5. Scala 没有提供break 和continue 来退出循环。(www.daowen.com)

6. Scala 中的if-else 语句可以接受返回值,而Java 不可以。

7. Scala 中没有static,但是可以用object 来达到Java 中相同的效果,Scala 中的object 可以实现单例对象。

8. Scala 中的通配符是_,Java 中的通配符是*。

9. Scala 中赋值语句是unit 的,所以不能串联。如下写法是错误的:

a = b = 1

10. Scala 的语法极其简洁,在第四章中用了大量的代码实现统计单词出现频率WordCount,而用Scala 只需三行代码即可实现:

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈