scala学习四:方法与函数

一、 方法与函数

Scala 方法是类的一部分,而函数是一个对象可以赋值给一个变量。换句话来说在类中定义的函数即是方法。

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

scala 复制代码
class Test{
	def m(x: Int) = x+3
	val f = (x:Int) => x+3
}

1.1 方法声明

scala 复制代码
def functionname([参数列表]):[return type]

1.2 方法定义

由一个 def 关键字开始,紧接着是可选的参数列表,一个冒号 : 和方法的返回类型,一个等于号 = ,最后是方法的主体。

如果方法没有返回值,可以返回Unit,类似于Java里面的void

scala 复制代码
def functionname([参数列表]):[return type] = {
	function body
	return [expr]
}

以上代码中 return type 可以是任意合法的 Scala 数据类型。参数列表中的参数可以使用逗号分隔。

函数里面的返回不需要写 return ,直接写要返回的数据

scala 复制代码
object add{
	def addInt(a:Int, b:Int):Int = {
		var sum:Int = 0
		sum = a + b
		return sum
	}
}

1.3 方法调用

scala 复制代码
直接调用
functionName(参数列表)
使用实例的对象来调用
[instance].funcitionName(参数列表)

二、闭包

闭包是一个函数,返回值依赖于声明在函数外部的一个或多个变量

访问一个函数里面局部变量的另一个函数

暂时不深入研究

相关推荐
q***31142 分钟前
【JAVA进阶篇教学】第十二篇:Java中ReentrantReadWriteLock锁讲解
java·数据库·python
点亮一颗LED(从入门到放弃)4 分钟前
C语言学习笔记
笔记·学习
时尚IT男20 分钟前
Python 魔术方法详解:掌握面向对象编程的精髓
开发语言·python
找了一圈尾巴23 分钟前
Python 学习-深入理解 Python 进程、线程与协程(下)
开发语言·python·学习
可触的未来,发芽的智生44 分钟前
微论-自成长系统引发的NLP新生
javascript·人工智能·python·程序人生·自然语言处理
活跃的煤矿打工人1 小时前
【星海随笔】标准学习
学习
1***35771 小时前
SQL之CASE WHEN用法详解
数据库·python·sql
晨非辰1 小时前
算法闯关日记 Episode :解锁链表「环形」迷局与「相交」奥秘
数据结构·c++·人工智能·后端·python·深度学习·神经网络
qq_336313931 小时前
java基础-set系列集合
java·开发语言·python
多恩Stone1 小时前
【系统资源监控-1】Blender批量渲染中的负载、CPU、GPU和进程管理
linux·python