美文网首页
Swift-泛型

Swift-泛型

作者: 蚂蚁牙齿不黑 | 来源:发表于2019-11-28 16:34 被阅读0次

泛型代码让你能根据你所定义的要求写出可以用于任何类型的灵活的、可复用的函数。你可以编写出可复用、意图表达清晰、抽象的代码

1.泛型函数

func swapTwoValues<T>(_ a: inout T, _ b: inout T) {
    let temporaryA = a
    a = b
    b = temporaryA
}

作用:swapTwoValues中的两个行参a和b可以传任何类型的数据

2.泛型类型

struct stack<Element> {
    var items = [Element]()
    mutating func push(_ item : Element) {
        items.append(item)
    }
    mutating func pop() -> Element {
        return items.removeLast()
    }
}

作用:使任何类型的Element都具备 push 和 pop方法

3.泛型扩展

extension stack{
    var topItem : Element?{
        return items.isEmpty ? nil : items[items.count - 1]
    }
}

作用:未知

4.类型约束

func someFunction<T: SomeClass, U: SomeProtocol>(someT: T, someU: U) {
    // function body goes here
}

作用: someT 要求是SomeClass及其子类
someU 必须遵守SomeProtocol

相关文章

  • swift 泛型

    Swift-泛型学习和实例总结 - Mazy's Blog - CSDN博客 Swift中的泛型 - 简书

  • Swift-泛型

    前言:Swift大多数概念和OC一样,也有些概念在OC中找不到对应的,比如说泛型。Swift中将那种操作写一次就可...

  • Swift- 泛型

    系统泛型 例如:NSDictionary,NSArray 泛型函数 类型参数 始终使用大写字母开头的驼峰命名法(例...

  • Swift-泛型

    泛型代码让你能根据你所定义的要求写出可以用于任何类型的灵活的、可复用的函数。你可以编写出可复用、意图表达清晰、抽象...

  • Swift-泛型

    泛型 将类型参数化,类似于C++中的模板 可以在协议中定一个泛型(关联类型) 用于类型约束 不透明类型(Opaqu...

  • Swift-泛型笔记

    Swift 泛型 Swift 提供了泛型让你写出灵活且可重用的函数和类型。 Swift 标准库是通过泛型代码构建出...

  • Swift-进阶:泛型

    本文主要介绍泛型及其底层原理 泛型 泛型主要用于解决代码的抽象能力 + 代码的复用性 例如下面的例子,其中的T就是...

  • Swift-进阶 14:泛型

    Swift 进阶之路 文章汇总[https://www.jianshu.com/p/5fbedf309237] 本...

  • Swift-泛型、关联类型

    一、泛型 我们可以在函数、类、结构体、枚举中使用泛型,在名称后使用来表示,例子如下: Sw...

  • 泛型 & 注解 & Log4J日志组件

    掌握的知识 : 基本用法、泛型擦除、泛型类/泛型方法/泛型接口、泛型关键字、反射泛型(案例) 泛型 概述 : 泛型...

网友评论

      本文标题:Swift-泛型

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