首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
Scala简介
Scala 基础语法
Scala 数据类型
Scala 变量
Scala 访问修饰符
Scala 运算符
Scala IF...ELSE 语句
Scala 循环
Scala 方法与函数
Scala 闭包
Scala 字符串
Scala 数组
Scala Collection
Scala Iterator(迭代器)
Scala 类和对象
Scala Trait(特征)
Scala 模式匹配
Scala 正则表达式
Scala 异常处理
Scala 提取器(Extractor)
Scala 文件 I/O
当前位置:
首页>>
技术小册>>
Scala入门教程
小册名称:Scala入门教程
Scala 有方法与函数,二者在语义上的区别很小。Scala 方法是类的一部分,而函数是一个对象可以赋值给一个变量。换句话来说在类中定义的函数即是方法。 Scala 中的方法跟 Java 的类似,方法是组成类的一部分。 Scala 中的函数则是一个完整的对象,Scala 中的函数其实就是继承了 Trait 的类的对象。 Scala 中使用 val 语句可以定义函数,def 语句定义方法。 ``` class Test{ def m(x: Int) = x + 3 val f = (x: Int) => x + 3 } ``` 注意:有些翻译上函数(function)与方法(method)是没有区别的。 ###方法声明 Scala 方法声明格式如下: ``` def functionName ([参数列表]) : [return type] ``` 如果你不写等于号和方法主体,那么方法会被隐式声明为抽象(abstract),包含它的类型于是也是一个抽象类型。 ###方法定义 方法定义由一个 def 关键字开始,紧接着是可选的参数列表,一个冒号 : 和方法的返回类型,一个等于号 = ,最后是方法的主体。 Scala 方法定义格式如下: ``` def functionName ([参数列表]) : [return type] = { function body return [expr] } ``` 以上代码中 return type 可以是任意合法的 Scala 数据类型。参数列表中的参数可以使用逗号分隔。 以下方法的功能是将两个传入的参数相加并求和: 实例 ``` object add{ def addInt( a:Int, b:Int ) : Int = { var sum:Int = 0 sum = a + b return sum } } ``` 如果方法没有返回值,可以返回为 Unit,这个类似于 Java 的 void, 实例如下: 实例 ``` object Hello{ def printMe( ) : Unit = { println("Hello, Scala!") } } ``` ###方法调用 Scala 提供了多种不同的方法调用方式: 以下是调用方法的标准格式: ``` functionName( 参数列表 ) ``` 如果方法使用了实例的对象来调用,我们可以使用类似java的格式 (使用 . 号): ``` [instance.]functionName( 参数列表 ) ``` 以上实例演示了定义与调用方法的实例: 实例 ``` object Test { def main(args: Array[String]) { println( "Returned Value : " + addInt(5,7) ); } def addInt( a:Int, b:Int ) : Int = { var sum:Int = 0 sum = a + b return sum } } ``` 执行以上代码,输出结果为: ``` $ scalac Test.scala $ scala Test Returned Value : 12 ```
上一篇:
Scala 循环
下一篇:
Scala 闭包
该分类下的相关小册推荐:
暂无相关推荐.