if x == nil {
x = y
}
Run Code Online (Sandbox Code Playgroud)
我知道上面的陈述可以改写为:
x = x ?? y
Run Code Online (Sandbox Code Playgroud)
但是x ??= y编译器不接受.是否有速记不重复x?
更新UITextView的文本时,我发现textView.text += "..."不起作用.编译器警告我"二进制运算符'+ ='不能应用于'String'类型的操作数." 和'字符串'".似乎我必须追加一个感叹号textView.text.
但是,如果我将其扩展到textView.text = textView.text + "...",它就可以了.我想知道它是设计成这样还是我误解了什么?
由于Swift严格检查类型,有时我们需要在NSString和String,NSArray和[AnyObject]等之间进行转换.但实际上有两种不同的方法可以做到这一点:
str as StringString(str)在Swift中更推荐哪个?为什么?