我的代码现在无效。我试图获取名称并在循环中单独添加它,但编译器给我一个错误消息,代码没有打印。
let names = [Double(2),3,8] as [Any]
let count = names.count
for i in 0..<count {
print((names[i]) + names[i])
}
答案 0 :(得分:1)
因为Any
没有+
运营商。
这将为您提供您期望的结果。
如果您想要添加2个值并打印结果,则需要将Any
转换为类似Double
let names = [Double(2),3,8] as [Any]
let count = names.count
for i in 0..<count {
if let value = names[i] as? Double {
print(value + value)
}
}
答案 1 :(得分:0)
使用as [Any]
毫无意义。您不能添加两个Any
类型的对象,这可能是您的错误所在。
简单地删除它,你的代码就可以了。
let names = [Double(2),3,8]
let count = names.count
for i in 0..<count {
print(names[i] + names[i])
}
输出:
4.0
6.0
16.0
更好的是:
let names = [Double(2),3,8]
for num in names {
print(num + num)
}