码迷,mamicode.com
首页 > 其他好文 > 详细

scala学习手记3 - var和val

时间:2016-06-01 22:45:14      阅读:239      评论:0      收藏:0      [点我收藏+]

标签:

scala中用var和val定义变量都是可以的。

用val定义的变量是不可变的,被初始化后值就固定下来,不可以再被修改(这类似于java中的final关键字);用var定义的变量是可变的,可以任意修改。

仍然要注意这里说的不可变是针对变量本身而言,而非变量所指向的实例。比如说如果定义了一个StringBuffer的val变量如val buffer = new StringBuffer(),那么变量buffer再执行诸如buffer.append(“robin”)这样的操作来修改buffer实例也是可行的。但是如果val变量是一个String类型的字符串如val domain = “zhyea.com”,那么就不可以再对变量domain做任何操作了——因为String类型本身也是final型的,不可变。

在scala编程中应尽量优先使用val。这可以提升不变性和函数式风格。

------------------

在这里有一点体会:scala好像是在尽力提高语义的丰富性,争取用更简短的表达式表达更丰富的内容;同时呢它又在尝试减少程序结构(或者说是模式)的复杂性,鼓励使用一种直指目标的编程风格。

scala学习手记3 - var和val

标签:

原文地址:http://www.cnblogs.com/amunote/p/5551219.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!