//习题 写一个计算参数平均值的函数
func cacuAver(numbers:Int...)->Int{
var average=0
var sum=0
if (numbers.count!=0){
for number in numbers{
sum+=number
}
average =sum/numbers.count
}
return average
}
在if numbers.count!=0
语句中发生错误,无法强制解包非可选类型'Int'的值,但当我更改为if numbers.count==0
时,错误消失。
我想知道我犯错的原因和地点。
答案 0 :(得分:2)
实际上非常简单,因为你知道!
和?
是Swift中的语法,所以最好在这些运算符之间留一个空格,这样做也没问题,比如说if numbers.count != 0
!
表示肯定有值,而?
表示它是可选值。错误会将您的numbers.count!
视为1个字而不是!=