美文网首页iOS精品
swift3.0枚举遵守协议

swift3.0枚举遵守协议

作者: 莫小哈 | 来源:发表于2017-03-08 15:00 被阅读203次

这是swift3.0官方文档协议那一节给出的协议

protocol ExampleProtocol {
   var simpleDescription: String { get }
   func adjust()
}

所留练习: 写一个实现这个协议的枚举 用的很多方法 都没实现(本人悟性比较低), 最后在网上找了相关文章 终于实现了 记录下来以便以后查看

enum SimpleEnum: ExampleProtocol {
    case Result(String)
    case Failure(String)

    var simpleDescription: String{
        get {
            switch self {
            case .Result("123"):
                return "13"
            case .Failure("zhang"):
                return "zhang"
            default:
                return "get error"
            }
        }
        set {
            switch self {
            case .Result("123"):
                self = .Result("12")
            case .Failure("zhang"):
                self = .Failure("zhang")
            default:
                self = .Failure("1333")
            }
        }
    }
//    case sime
    mutating func adjust() {
        switch self {
        case let .Result(text):
            self = .Result(text + " (first case adjusted)")
        case let .Failure(text):
            self = .Failure(text + " (second case adjusted)")
        }
    }
}
var enumConformToProtocolTest = SimpleEnum.Failure("zhang")
//enumConformToProtocolTest.simpleDescription
enumConformToProtocolTest.adjust()
enumConformToProtocolTest.simpleDescription
print(enumConformToProtocolTest)

enumConformToProtocolTest = SimpleEnum.Result("ThirdVal")
enumConformToProtocolTest.simpleDescription
enumConformToProtocolTest.adjust()
enumConformToProtocolTest.simpleDescription

相关文章

  • swift中的枚举

    也能遵守协议 协议有一个name属性和一个testFunc方法。枚举遵守属性: 也能有属性 枚举遵守协议之后就拥有...

  • swift3.0枚举遵守协议

    这是swift3.0官方文档协议那一节给出的协议 所留练习: 写一个实现这个协议的枚举 用的很多方法 都没实现(...

  • Swift - 协议

    协议 协议的格式 协议的定义方式与类,结构体,枚举的定义都非常相似 遵守协议的格式 协议的基本使用 定义协议和遵守协议

  • 15.协议的使用

    协议的格式 协议的定义方式与类,结构体,枚举的定义都非常相似 遵守协议的格式 协议的基本使用 定义协议和遵守协议 ...

  • 20 协议

    协议的格式 协议的定义方式与类,结构体,枚举的定义都非常相似 遵守协议的格式 协议的基本使用 定义协议和遵守协议 ...

  • swift最新语法总结(协议)

    协议的格式 协议的定义方式与类,结构体,枚举的定义都非常相似 遵守协议的格式 协议的基本使用 定义协议和遵守协议 ...

  • Swift基础语法-协议

    1. 协议的格式 协议的定义方式与类,结构体,枚举的定义都非常相似 协议默认可以被类/结构体/枚举类型遵守 格式:...

  • Swift - 协议(Protocol)

    协议(Protocol) 协议可以用来定义 方法、属性、下标 的声明,协议可以被 枚举、结构体、类 遵守(多个协议...

  • Swift5.1学习随笔之协议Protocol

    协议Protocol 协议可以用来定义方法、属性、下标声明,协议可以被枚举、结构体、类遵守(多个协议用逗号隔开) ...

  • [Swift5.1] 14-协议

    协议(Protocol) 1)协议可以用来定义方法、属性、下标的声明,协议可以被枚举、结构体、类遵守(多个协议之间...

网友评论

    本文标题:swift3.0枚举遵守协议

    本文链接:https://www.haomeiwen.com/subject/adpbgttx.html