我尝试在下面的语句中运行,但它在代码中被跳过了。
guard let num1 = num1Input.text else
{
show("No input in first box")
return
}
当文本字段为空时,有人可以告诉我为什么这句话没有运行?
答案 0 :(得分:3)
您可以使用where
子句检查非零和非空
guard let num1 = num1Input.text where !num1.isEmpty else {
show("No input in first box")
return
}
答案 1 :(得分:0)
你应该检查文本的长度,而不是它的nil
,即:
guard num1Input.text.characters.count > 0 else {
...
}
如果文字是可选的,你可以这样做。
guard let num1 = num1Input.text where num1.characters.count > 0 else {
...
}
答案 2 :(得分:0)
此语句正在测试text
是否为nil
,但您可能想测试该字符串是否为空,因此
guard let input = num1Input.text where input.characters.count > 0 else {
print("empty")
return
}
或只是简单地
guard num1Input.text?.characters.count > 0 else {
print("empty")
return
}