一、
//枚举网络访问错误
//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])
}
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
}
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)