我有两个几乎相同的代码实例,一个实例有效,而另一个实例无效。
使用Swift在Apple的App开发简介中,我已经到达要建立一个数组的位置,编写了一个对数组中的数据给出至少两个响应的函数,然后编写了{{ 1}}循环遍历它,并对数组中的每个值给出正确的响应。我不断收到此错误:
二进制运算符'> ='不能应用于两个'[Int]'操作数错误。
但是,如果我将for...in
循环放入函数中,则一切正常。
for...in
使用包含循环的函数,将func goal(time:[Int]) {
for code in time {
if (code >= 90) {
print ("Good Bunny, Have a carrot!")
}else {
print ("Bad Rabbit! Try Harder!")
}
}
}
goal(time: codeLearned)
func bunny(bun: [Int]){
if (bun >= [90]) {
print ("Good Bunny")
} else {
print ("Bad Rabbit")
}
}
bunny(bun: codeLearned)
放在方括号if
中可修复错误,但是没有循环就无法解决问题,因为练习是在没有循环的情况下进行这就是我要做的。
答案 0 :(得分:2)
他们没有相同的逻辑。第一个函数检查数组中元素的值,第二个函数尝试将给定的数组与单元素数组进行比较。
func goal(time:[Int]) {
for code in time {
if (code >= 90) {
print ("Good Bunny, Have a carrot!")
} else {
print ("Bad Rabbit! Try Harder!")
}
}
}
goal(time: codeLearned)
/// If your goal is the check count of array
func bunny(bun: [Int]){
if (bun.count >= 90) {
print ("Good Bunny")
} else {
print ("Bad Rabbit")
}
}
bunny(bun: codeLearned)
/// If your goal is the check element value in array
func bunny(bun: [Int]){
for item in bun {
if (item >= 90) {
print ("Good Bunny")
} else {
print ("Bad Rabbit")
}
}
}
bunny(bun: codeLearned)