scala的传值参数和传名参数
来源:互联网 发布:淘宝潮流女装店铺 编辑:程序博客网 时间:2024/06/06 01:38
object ScalaDemo extends App{ var n = 10 def count:Int = { n -= 1 n } def invokeByName(x : => Int):Unit = { println("start") for (i <- 0 until 3){ println("invokeByName x = " + x) //不能使用x() } println("end") } def invokeByName2(x : () => Int):Unit = { println("start") for (i <- 0 until 3){ println("invokeByName2 x = " + x()) } println("end") } def invokeByValue(x : Int):Unit = { println("start") for (i <- 0 until 3){ println("invokeByValue x = " + x) } println("end") } //统一初始化 invokeByName{ println("begin invokeByName") count } invokeByName2{ println("begin invokeByName2") () => { n -= 1 n } } invokeByValue{ println("begin invokeByValue") count }}
输出
start
begin invokeByName
invokeByName x = 9
begin invokeByName
invokeByName x = 8
begin invokeByName
invokeByName x = 7
end
begin invokeByName2
start
invokeByName2 x = 6
invokeByName2 x = 5
invokeByName2 x = 4
end
begin invokeByValue
start
invokeByValue x = 3
invokeByValue x = 3
invokeByValue x = 3
end
0 0
- scala的传名参数和传值参数
- scala的传值参数和传名参数
- scala 传值参数和传名参数 ():=>和:=>
- Scala基础应用(10)- 传值与传名参数
- Scala从零开始:函数参数的传名调用(call-by-name)和传值调用(call-by-value)
- scala传值调用和传名调用
- Scala传名参数(By-Name)
- 浅析scala传名调用和传值调用,: => 与() : =>
- scala默认参数和命名参数
- Scala函数传名调用
- scala只有一个参数的提取值
- Scala-类型参数和界定
- Scala可变参数列表,命名参数和参数缺省
- scala类型参数的问题
- Scala 类型参数的界定
- scala类的定义和可变长度参数
- scala多值参数列表
- 引用参数和传值参数的区别
- intellij idea svn 修改文件后,父文件夹也标注修改
- 详解log4j2(下)
- Python模块random
- SpringMVC RestFul方式提交
- 我记得
- scala的传值参数和传名参数
- Detect Capital问题及解法
- 《Effective java 第2版》读书笔记--异常、并发与序列化
- 普通对象(不包括数组对象、Class对象)的创建
- Python练习题目1
- java大数处理hdu1002
- WEB骇客网
- Eclipse/Myeclipse中查看和调试JDK1.8源代码的方法
- bootstrap常用类名