Swift 为什么我不能在if子句中使用此布尔表达式?

Swift 为什么我不能在if子句中使用此布尔表达式?,swift,Swift,我想在if语句中检查以下布尔表达式: var result : NSData? = getResult() var x : Bool = result == nil 这个很好用 if x { } 这不管用 if result == nil { } 它给了我以下错误: Type of expression is ambiguous without more context Brace block of statements is an unused closure Expected { af

我想在if语句中检查以下布尔表达式:

var result : NSData? = getResult()
var x : Bool = result == nil
这个很好用

if x {
}
这不管用

if result == nil {
}
它给了我以下错误:

Type of expression is ambiguous without more context
Brace block of statements is an unused closure
Expected { after if condition
Invalid character in source file

我做错了什么?

在if旁边隐藏了不可见的空格字符(不带空格的字符)。

在if旁边隐藏了不可见的空格字符(不带空格的字符)。

如果结果==nil{}
则编译(如果
结果
是可选的)。问题一定是在周围的环境中。你能在问题中包含
结果的声明吗?对我来说不是!“result”是“NSData”类型的?我创建了一个最小的示例,它工作得很好-然后我仔细看了看:if旁边隐藏着不可见的空白字符!也许我是从网上某个地方复制粘贴的……我想你应该认真对待“源文件中的无效字符”。
如果result==nil{}
编译(如果
result
是可选的)。问题一定是在周围的环境中。你能在问题中包含
结果的声明吗?对我来说不是!“result”是“NSData”类型的?我创建了一个最小的示例,它工作得很好-然后我仔细看了看:if旁边隐藏着不可见的空白字符!也许我是从网上的某个地方复制粘贴的……我想你们应该认真对待“源文件中的无效字符”。