这两个函数之间的根本区别是什么?
func sqr(number: Int) {
print (number * number)
}
func sqr1(number: Int) -> Int {
return number * number
}
这就是为什么我基本上从不向新程序员教授print
。人们将返回值与打印值混为一谈,因为最终它们都会被打印出来,所以没有太大明显的区别。
假设你的目标是评估一个二次方程:a*x^2 + b*x + c
。
如果x^2
项不返回值,您将如何将其乘以a
?
func sqr1(number: Int) -> Int {
return number * number
}
let a = 5
let b = 4
let c = 3
let x = 2
let y = 1
let result = a*sqr1(number: x) + b*x + c
print(result)
尝试使用sqr(number:)
执行此操作,您很快就会发现这是不可能的。
第一个1是一个void
返回函数,用于打印数字的平方
第二个1是平方数的Int
返回函数,它将平方数返回给调用者
例如,有时在编码中,您需要打印一个值来进行e.x调试。对于初学者来说,有时他们认为这没有用,但当您有经验时,您就会知道原因,而不是1将值返回给调用者,这对所有级别的都更有意义