一、 // 枚舉網絡通路錯誤 //swift 中枚舉可以定義函數和屬性
private enum GFFNetworkError: Int {
case emptyDataError = - 1
case emptyTokenError = - 2
// 錯誤描述
private var errorDescription: String {
switch self {
case .emptyDataError: return " 空資料 "
case .emptyTokenError: return "Token 為空 "
}
}
// 根據枚舉類型,傳回對應的錯誤
private func errror() -> NSError {
return NSError (domain: GFFErrorDomainName , code: rawValue , userInfo: [ GFFErrorDomainName : errorDescription ])
} } 二 、 enum GFFClass: String {
case emptyName = "emptyName"
case fullName = "fullName"
static func getName(type: Bool )->( String ) {
return type == false ? GFFClass . emptyName . rawValue : GFFClass . fullName . rawValue
} }
調用枚舉中函數的方法( static 修飾的枚舉函數,相當于類的類方法,不加修飾的枚舉函數,相當于類的對象方法 ) GFFNetworkError. emptyDataError. errror() let name: String = GFFClass. getName(true)