Tag: 自定义字符串可转换

易于阅读的自定义字符串可转换

有什么快速简便的方法可以使您的打印对帐单输出更整洁,更易读? 看看协议Custom String Convertible! 我发现该协议在我的项目中非常有用,并且想分享一下这是什么以及如何使用它的快速概述。 Apple的文档将“自定义字符串可转换”定义为“一种具有自定义文本表示形式的类型。”简而言之,真正发生的是,当您使类或结构符合“自定义字符串可转换”时,您会自动获得一个内置的description属性,即您可以将其设置为任意字符串。 这个超灵活的描述属性是“自定义字符串可转换”的核心,因此它对于创建清晰易读的输出代码如此有用。 在我们开始将Custom String Convertible应用于您的代码之前,让我们看一下没有此协议的代码…即我们要避免的事情! 从自定义类型开始: struct Dog { var品种:字符串 变量名称:字符串 变量年龄:整数 var color:字符串 } 现在,我们将创建几个Dog对象的实例,并将它们添加到dogs数组中。 var狗:[Dog] = [] let dog1 = Dog(品种:“ Beagle”,名称:“ Spot”,年龄:5,颜色:“ Brown and white”) let dog2 = Dog(品种:“贵宾犬”,名称:“蓬松”,年龄:2,颜色:“灰色”) let dog3 = Dog(品种:“拉布拉多”,名称:“ Buddy”,年龄:9,颜色:“黑色”) 狗= [dog1,dog2,dog3] 在此示例中,让我们从最大年龄到最小年龄对这些狗进行排序,并使用打印语句来确保我的排序方法有效。 func sortDogs(){ dogs = dogs.sorted {返回$ 0.age> $ 1.age} 打印(狗) […]