call by value 对函数的实参求值,并只求值一次
举例:def test1(x:Int,y:Int):Int=x+x
call by name:函数的实参每次在函数体内部被调用的时候,都会进行求值
实践:
byvalue策略,实际使用loop(),死循环
byvalue策略,实际不适用loop(),也会卡死
说明:byvalue策略,参数无论是否使用,都会进行求值
byname策略,实际不使用loop,不会卡死
byname策略,实际使用loop,死循环
结论:byname 策略,只有在使用参数时,才会进行求值