解析,因为while和do…while中没有返回值,所以当要用该语句来计算并返回结果时,就不可避免的使用变量
例子:计算1-10的和
var num = 0;
var x = 0;
while(x<=10){
num += x;
x += 1;
}
函数式编程的重要思想就是尽量不要产生额外的影响,上面的代码就不符合函数式编程的思想
例子:递归实现1-10的和
def mx(num:Int,sum:Int):Int = {
if(num<=10) return mx(num+1,sum + num);
else return sum;
}