我想知道这段代码的作用:
var something: String = "Hi"
if something = "Hello world!" {
// Will this be executed?
}
它会分配给something
变量并做if
身体吗?或者它会只为主体设置该变量的值,if
而在外部它不会改变?或者有什么关系nil
?
我想知道这段代码的作用:
var something: String = "Hi"
if something = "Hello world!" {
// Will this be executed?
}
它会分配给something
变量并做if
身体吗?或者它会只为主体设置该变量的值,if
而在外部它不会改变?或者有什么关系nil
?
赋值不是返回布尔值的表达式,因此不能在这样的内部使用if
。所以这不会编译。
(尽管您会收到误导性的编译器消息)
此模式仅适用于可能失败的赋值 - 也就是说,如果您正在分配返回 Optional 值的表达式的结果。在这种情况下,您使用if let
,而不仅仅是if
.
我们不能对 if 条件使用赋值运算符,如果假设您正在使用可选类型,您会不会
这里有一些运算符可以帮助您清楚地区分与赋值运算符
= assignment operator
== is equal to
=== is identical to