什么是 Haskell Show 的 Swift 等价物,用于在带有案例的枚举中打印值?我读过 Show 与 Java toString() 方法非常相似,Swift CustomStringConvertible 可能是一个不错的选择。
例如,在 Fraction 实例上使用 print 将显示:
> Fraction(numerator: 1, denominator: 2)
我不想打印整个案例,而是只打印中间带有斜线的数字。例如“1/2”。
我当前的代码如下:
enum MyNum: Equatable {
case Fraction(numerator: Int, denominator: Int)
case Mixed(whole: Int, numerator: Int, denominator: Int)
}
extension MyNum: CustomStringConvertible {
var description: String {
return "(\(Fraction.numerator) / \(Fraction.denominator))"
}
}
var testFraction= MyNum.Fraction(numerator: 1, denominator: 2)
print(testFraction)