iOS swift Generics 通用类型
ios 类型 swift 通用 generics
2023-09-14 09:04:14 时间
1.官网文档
Generics – The Swift Programming Language
2.举例Moya
@frozen public enum Result<Success, Failure> where Failure : Error {
/// A success, storing a `Success` value.
case success(Success)
/// A failure, storing a `Failure` value.
case failure(Failure)
static func testMoyaSmscodeAPI() {
let loginProvitder = MoyaProvider<HFAPI>(stubClosure: MoyaProvider.immediatelyStub)
loginProvitder.request(.smscode("25q.com","register")) { result in
print(result)
switch result {
case let .success(moyaResponse):
let statusCode = moyaResponse.statusCode // Int - 200, 401, 500, etc
let data = String.init(data: moyaResponse.data, encoding: String.Encoding.utf8)
print(data ?? "no data")
case .failure(_):
break
}
}
}
3.举例:bytesToHexStr
extension Data {
//MARK: Data转十六进制字符串
/// Create hexadecimal string representation of `Data` object.
///
/// - returns: `String` representation of this `Data` object.
func hexadecimal() -> String {
return map { String(format: "%02x", $0) }
.joined(separator: "-")
}
}
extension Array where Element == UInt8 {
//MARK: bytes[UInt8]转十六进制字符串
/// Create hexadecimal string representation of `Data` object.
///
/// - returns: `String` representation of this `Data` object.
func toHexStr() -> String {
let data:Data = Data.init(bytes: self)
return data.hexadecimal()
}
}
相关文章
- iOS开发之SQLite--C语言接口规范(五)——iOS开发使用SQLite实例
- iOS开发之网络编程--5、NSURLSessionUploadTask+NSURLSessionDataDelegate代理上传
- iOS开发 - 文件压缩与解压缩
- iOS学习之VFL语言简介
- 越狱后的ios如何用apt-get 安装各种命令
- mac ---Charles抓包---ios苹果手机
- IOS(swift)获取storyboard中的控制器(控制器设置)
- ios跳到根控制器(swift 附跳到指定控制器的连接)self.navigationController.viewControllers UINavigationController
- iOS要开发,采集音频并存储为 PCM 文件
- iOS开发实践之网络检測Reachability
- iOS 通讯录-获取联系人属性
- 判断手机端获取哪种类型的手机系统-安卓-ios