Swift中String插值和String初始化器之间的区别

Swift中String插值和String初始化器之间的区别,第1张

Swift中String插值和String初始化器之间的区别

字符串插值

"(item)"
为您提供了调用
description
该项目的结果。
String(item)
调用
String
初始化程序并返回一个
String
值,该值通常与
String
字符串插值中获得的值相同,但不能保证。

考虑以下人为的示例:

class MyClass: CustomStringConvertible {    var str: String    var description: String { return "MyClass - (str)" }    init(str: String) {        self.str = str    }}extension String {    init(_ myclass: MyClass) {        self = myclass.str    }}let mc = MyClass(str: "Hello")String(mc)  // "Hello""(mc)"     // "MyClass - Hello"


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5666555.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存