因此,在过去一小时左右的时间里,我一直试图在swift中嵌套三个if语句,但没有任何工作 . 我真的把头发拉出来看似乎那么简单,但我不知道我做错了什么 . 任何帮助表示赞赏 .
var population = 125442
var message: String
var hasAPostOffice: Bool = true
if population < 10000 {
message = "\(population) is a pretty small town"
}else if population >= 10000 && population < 50000 {
message = "\(population) is a medium sized town"
}else{
message = "\(population) is a very large town!"
}else = {
population >= 200000 && population < 120000 {
message = "\(population) is a super huge town"
}
}
print(message)
if !hasAPostOffice {
print("Where could I buy stamps?")
}
4 回答
您的嵌套应该看起来像 -
再加上这个条件是什么
在我看来,这绝不是真的,因为人口不能同时低于120000和超过200000 .
所以在这里检查你的逻辑
您遇到的问题不仅限于Swift . 其他每个语句必须只与一个if语句相关联 .
在您的代码中,您有两个else语句 . 如果因为尝试获得评估的尝试条件,则其他一个语句看起来应该是其他语句 . 因此,如果您具有依赖于表达式的条件,请从中创建else if语句 .
看起来你的逻辑是关闭的;解决方案是将最终的else添加为最大值:
这对switch语句更有效: