什么是Swift等价于Java .toString()来打印类实例的状态?
描述属性是您要查找的.这是打印包含对象的变量时访问的属性.
您可以通过采用CustomStringConvertible协议,然后实现description属性,将描述添加到您自己的类中.
class MyClass: CustomStringConvertible { var val = 17 public var description: String { return "MyClass: \(val)" } } let myobj = MyClass() myobj.val = 12 print(myobj) // "MyClass: 12"
let str = String(myobj) // str == "MyClass: 12"
这是访问实例描述的推荐方法(而不是myobj.description,如果类不实现CustomStringConvertible将不起作用)