0
在Swift 3.0中有没有一种方法可以从String
类型中获取StaticString
类型,该类型很复杂?将字符串转换为StaticString
实施例(需要一个转换到工作):
let aString: StaticString = "One part" + "Second part"
在Swift 3.0中有没有一种方法可以从String
类型中获取StaticString
类型,该类型很复杂?将字符串转换为StaticString
实施例(需要一个转换到工作):
let aString: StaticString = "One part" + "Second part"
这是不可能的,因为一个StaticString
被定义为
的简单字符串设计成表示文本是“可知在 编译时”。 (Reference)
字符串串联发生在运行时。
我不知道你是刨去做些什么,但你可以做这样的事情:
func aMethod(i: Int) -> StaticString {
switch i {
case 0:
return "Simple"
case 1:
return "Complex"
default:
return "Default"
}
}
let result = aMethod(i: 1)
print("\(type(of: result)): \(result)") // prints "StaticString: Complex"
谢谢迈克尔,但我真的很喜欢用通用的黑客方式来做这种转换。 – Vanya
'让STR:StaticString = “\(第一部分)\(第2部分)”'请问这是什么您需要 –
@InderKumarRathore实际上结果是相同的“无法将一种类型的值转换为另一种” – Vanya
我阅读文档,它说'StaticString:一种字符串类型,用于表示编译时已知的文本.' –