scala函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了scala函数相关的知识,希望对你有一定的参考价值。

函数是一组一起执行任务的语句。可以将代码放到独立的功能。如何划分你的代码不同功能?在逻辑上,通常是让每个函数执行特定的任务。

Scala有函数和方法,我们术语说的方法和函数互换用微小的差别。Scala方法是其中有一个名字,签名,任选一些注释,有的字节码,其中如在Scala中函数是可被分配给一个变量的完整对象类的一部分。换句话说,函数,其被定义为某些对象的一个成员,被称为方法。

函数定义可以出现在在源文件的任何地方,Scala允许嵌套函数的定义,那就是其他函数定义的内部函数定义。需要注意的最重要的一点是,Scala的函数名称可以类似+, ++, ~, &,-, -- , , /, : 等字符。

函数声明:

Scala函数声明有如下形式:

def functionName ([list of parameters]) : [return type]
举例:  def  fun01(name:String,age:Int):String{}

如果保留关闭等号和方法体的方法则为隐式声明,抽象的封闭类型是抽象本身。

函数定义:

Scala函数定义有如下形式:

def functionName ([list of parameters]) : [return type] = {
   function body
   return [expr]
}

在这里,返回类型可以是任何有效的scala数据类型,参数列表将是用逗号和参数,返回值类型列表分离变量是可选的。非常类似于Java,一个返回语句可以在函数表达式可用情况下返回一个值。以下是这将增加两个整数并返回的函数:

object add{
   def addInt( a:Int, b:Int ) : Int = {
      var sum:Int = 0
      sum = a + b

      return sum
   }
}

函数,它不返回任何东西,可以返回这相当于在Java中void,并表示该函数不返回任何单元。Scala中不返回任何东西函数被称为过程。以下是语法

object Hello{
   def printMe( ) : Unit = {
      println("Hello, Scala!")
   }
}

调用函数:

Scala提供了一些语法的变化来调用方法。以下是调用一个方法的标准方法:

functionName( list of parameters )

如果函数被对象的一个实例调用使用,那么使用类似于Java点标记如下:

[instance.]functionName( list of parameters )

下面是一个例子用来定义,然后调用函数:

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
   }
}

让我们编译和运行上面的程序,这将产生以下结果:

C:/>scalac Test.scala
C:/>scala Test
Returned Value : 12

C:/>
注意:也可以安装windows环境下的scala程序,然后直接打开命令行输入scala ,输入程序代码执行。

Scala函数是Scala编程的核心,这就是为什么Scala被假定为一个函数式编程语言。


本文出自 “星月情缘” 博客,请务必保留此出处http://xuegodxingyue.blog.51cto.com/5989753/1928575

以上是关于scala函数的主要内容,如果未能解决你的问题,请参考以下文章

Scala的面向对象与函数编程

为什么Scala是可扩展的?

初学scala4——trait混入

Scala附加列表

Scala函数式编程函数式的数据结构 下

重学scala:scala中的变量方法函数