传值调用和传名调用

scala的传值调用和传名调用

共用代码:

//传值调用和传名调用
  var money = 100
  //定义一个花钱的方法
  //花钱
  def buy(): Unit ={
    money -= 5
  }


  //查询
  def see()={
    buy()
    money
  }

传值调用

  当传入参数为一个具体的数值时,参数的值一旦确定,就不会改变。

	def value(x:Int): Unit ={
    	for(i <- 1 to 5){
     	 println("money="+ x )
   	 }
  	}

value(see())运行结果:

money=95
money=95
money=95
money=95
money=95

传名调用(函数)

  将函数作为参数,假设接收该函数返回值的变量为x,每当方法体内部调用该变量的时候,该变量所对应的函数也会相应的执行一次。

	def key(x: => Int): Unit ={
    	for(i <- 1 to 5){
      		println("money="+ x )
    	}
  	}

key(see())的执行结果为:

money=90
money=85
money=80
money=75
money=70
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值