call by value:会先计算参数的值,然后再传递给被调用的函数

call by name:参数会到实际使用的时候才计算

定义方法

def return1():Int = {
println("calling...")
1
} def callByValue(x: Int) = {
  println("x1=" + x)
  println("x2=" + x)
} def callByName(x: =>Int) = {
  println("x1=" + x)
  println("x2=" + x)
}

调用方法,比较输出

scala> callByValue(return1())
calling...
x1=1
x2=1 scala> callByName(return1())
calling...
x1=1
calling...
x2=1

最新文章

  1. 编译链接 C++
  2. 使用 UICollectionView 实现日历签到功能
  3. List集合的remove一个对象的方法
  4. 关于asp.net 开发的小技巧—让传值对象化
  5. swiper 技巧
  6. 并发编程 19—— 显式的Conditon 对象
  7. iOS app上传错误集锦(转载)
  8. Oracle 表的连接方式(1)-----Nested loop join和 Sort merge join
  9. Cocos2d-x开发中C++内存管理
  10. 【JAVA - 基础】之反射的原理与应用
  11. SQL Server2008知识点总结
  12. sql2000数据库误删除后自行恢复二次覆盖成功恢复
  13. 前端到后台ThinkPHP开发整站(6)
  14. Mybatis通用Mapper
  15. 关联查询一张小表。对性能有影响吗(mysql)
  16. Linux编译安装Mariadb数据库
  17. MongoDB在Windows系统下的安装和启动
  18. C# -- 索引器、枚举类型
  19. python - getattr 与 getattribute 机制
  20. java下使用chromedriver获取访问页面状态码

热门文章

  1. JS的正则表达式限定开始和结尾等测试
  2. windows2008R2下iis7.5中的url重写(urlrewrite)
  3. JQuery 自定义属性取值 赋值
  4. 代码内存泄露检测(1) MLeaksFinder (Wechat开源) + FBRetainCycleDetector (FaceBook开源)
  5. macos的iptables功能是pfctl
  6. List<E>
  7. `GLIBCXX_3.4.15' not found when using mex file in matlab (linux)
  8. Lua 学习笔记 (1)
  9. [HTTPS] - 请求API失败(Could not create SSL/TLS secure channel)之解决
  10. [SVN] - 使用 TortoiseSVN 进行文件比对非常慢 之 解决