博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Scala 入门
阅读量:7117 次
发布时间:2019-06-28

本文共 1121 字,大约阅读时间需要 3 分钟。

  hot3.png

第一步:定义变量

Scala 定义了两种类型的变量 val 和 var,val 类似于 Java 中的 final 变量,一旦初始化之后,不可以重新复制(我们可以称它为常变量)。而 var 类似于一般的非 final 变量。可以任意重新赋值。

比如定义一个字符串常变量:

var msg = "hello world";

这个表达式定义了一个 msg 变量,为字符串常量。它的类型为 string (java.lang.string)。 可以看到我们在定义这个变量时并不需要像 Java 一样定义其类型,Scala 可以根据赋值的内容推算出变量的类型。这在 Scala 语言中成为 “type inference”。当然如果你愿意,你也可以采用和 Java 一样的方法,明确指定变量的类型,如:

var msg : String = "hello world";

不过这样写就显得不像 Scala 风格了。此外 Scala 语句也不需要以分号结尾。

第二步:定义函数

Scala 既是面向对象的编程语言,也是面向函数的编程语言,因此函数在 Scala 语言中的地位和类是同等第一位的。下面的代码定义了一个简单的函数求两个值的最大值:

def max (x: Int , y: Int): Int = {    if(x > y)      x;    else      y;  }

Scala 函数以 def 定义,然后是函数的名称(如 max),然后是以逗号分隔的参数。Scala 中变量类型是放在参数和变量的后面,以“:”隔开。这种做的一个好处是便与 “type inference”。刚开始有些不习惯(如果你是 Pascal 程序员会觉的很亲切)。同样如果函数需要返回值,它的类型也是定义在参数的后面(实际上每个 Scala 函数都有返回值,只是有些返回值类型为 Unit,类似为 void 类型)。

此外每个 Scala 表达式都有返回结果(这一点和 Java,C# 等语言不同),比如 Scala 的 if else 语句也是有返回值的,因此函数返回结果无需使用 return 语句。实际上在 Scala 代码应当尽量避免使用 return 语句。函数的最后一个表达式的值就可以作为函数的结果作为返回值。

同样由于 Scala 的 “type inference” 特点,本例其实无需指定返回值的类型。对于大多数函数 Scala 都可以推测出函数返回值的类型,但目前来说回溯函数(函数调用自身)还是需要指明返回结果类型的。

查看全文地址:

转载于:https://my.oschina.net/jeeker/blog/644945

你可能感兴趣的文章
ASP.NET MVC 3 网站优化总结(六)压缩 HTML
查看>>
我的友情链接
查看>>
拥抱阳光下的产业--光伏新技术、新产品、新工艺发布会顺利召开
查看>>
我的友情链接
查看>>
要考虑
查看>>
文件的上传
查看>>
Oracle日常巡检维护中常用的一些STUFF
查看>>
我的友情链接
查看>>
css 实现小三角
查看>>
Nginx的配置
查看>>
手势 UIPinchGestureRecognizer 捏合手势
查看>>
vim配置
查看>>
[Swift]UIKit学习之滑块控件UISlider的用法
查看>>
我的友情链接
查看>>
nginx+tomcat+memcached构建session共享集群
查看>>
回看Java环境变量classpath
查看>>
mysql数据库Explain详解 .
查看>>
python 多线程插入mysql
查看>>
数据库索引学习相关资料汇总
查看>>
equals和hashcode详解
查看>>