Scala这一路 之 高级语法2-方法与函数

引用:

Scala 有方法与函数,二者在语义上的区别很小。Scala 方法是类的一部分,而函数是一个对象可以赋值给一个变量。换句话来说在类中定义的函数即是方法。

Scala 中的方法跟 Java 的类似,方法是组成类的一部分。

Scala 中的函数则是一个完整的对象,Scala 中的函数其实就是继承了 Trait 的类的对象。

Scala 中使用 val 语句可以定义函数,def 语句定义方法。

#方法声明:
#如果你不写等于号和方法主体,那么方法会被隐式声明为抽象(abstract),包含它的类型于是也是一个抽象类型。
def functionName([参数列表]) : [return type]

#方法定义:
#在没有返回类型时 ,Scala采用Unit关键字 作为[return type]
def functionName([参数列表]) : [return type] = {
    function body
    return [expr]
}
  • 示例代码

#示例代码
object testF{
	def testAdd(str1:String,str2:String,num1:Int): String = {
		var retStr = str1 + str2 ;
		if(num1 == 1){
			retStr = retStr + "-test";
		}
		return retStr;
	}
}
  • 示例结果


  • 函数

  • 内嵌函数

    • #语法
      def out(...): Int = {
          def inner(...):Int = {
              ...
          }
          ...
          inner(...)
      }
  • 匿名函数

    • #匿名函数:箭头左侧是参数列表,右侧是函数体。特点:匿名函数的使用使代码更加简洁
      #语法
      var func = (i: Int) => i+3

END~

猜你喜欢

转载自blog.csdn.net/mengfanzhundsc/article/details/81188439