如何在SWIFT中连接可选字符串

如何在SWIFT中连接可选字符串,swift,string-concatenation,Swift,String Concatenation,我想连接一个字符串,并执行以下操作: var text: String! .... text = "hello" text += "! How r you?" 但我得到了以下错误: 无法转换“字符串”类型的值指定所需的参数类型 “输入输出字符串”文本+=^~~~ 我怎样才能修好它?谢谢在您的情况下,将值声明为空是没有意义的,因为您将在下一行中修改它 但是,如果赋值发生在其他地方,并且您希望将变量与一起使用!,您应该检查字符串是否具有带?的值?。如果text为nil,则不会调用此函数 在您的情

我想连接一个字符串,并执行以下操作:

var text: String!
....
text = "hello" 
text += "! How r you?"
但我得到了以下错误:

无法转换“字符串”类型的值指定所需的参数类型 “输入输出字符串”文本+=^~~~


我怎样才能修好它?谢谢

在您的情况下,将值声明为空是没有意义的,因为您将在下一行中修改它

但是,如果赋值发生在其他地方,并且您希望将变量与一起使用!,您应该检查字符串是否具有带?的值?。如果text为nil,则不会调用此函数


在您的情况下,将值声明为空是没有意义的,因为您将在下一行中修改它

但是,如果赋值发生在其他地方,并且您希望将变量与一起使用!,您应该检查字符串是否具有带?的值?。如果text为nil,则不会调用此函数


必须定义不带感叹号的变量,如下所示:

var text: String = ""
text = "hello" 
text += "! How r you?"
或根据上下文的功能缩短:

var text: String = "hello" 
text += "! How r you?"

必须定义不带感叹号的变量,如下所示:

var text: String = ""
text = "hello" 
text += "! How r you?"
或根据上下文的功能缩短:

var text: String = "hello" 
text += "! How r you?"

你可以这样做

var text = "Hello!" as! String
text = text + " How are you?"

希望有帮助。

你可以通过这样做得到它

var text = "Hello!" as! String
text = text + " How are you?"

希望能有所帮助。

在Swift中处理感叹号时,您必须记住尝试使用!访问不存在的可选值会触发运行时错误

如果可选项有一个值,则该值被视为“不等于零”。因此,在访问其基础值之前,您必须检查此项:

if text != nil {
    text += "! How are you?"
}

在Swift中处理感叹号时,您必须记住尝试使用!访问不存在的可选值会触发运行时错误

如果可选项有一个值,则该值被视为“不等于零”。因此,在访问其基础值之前,您必须检查此项:

if text != nil {
    text += "! How are you?"
}

更改变量文本:字符串!to var text=更改var text:String!要选择var text=或text?+=!你好吗?@Hamish你说得对。我编辑了我的答案。或者文本?+=!你好吗?@Hamish你说得对。我编辑了我的答案。