美文网首页Swift编程
Swift | 泛型交换数组中两个元素

Swift | 泛型交换数组中两个元素

作者: 字符管理师 | 来源:发表于2019-08-04 23:10 被阅读0次

先声明一个可变数组

var nums = [1,2,3,4,5,6,7,8]

元素交换核心代码

func swap<T>(_ nums:inout[T],_ a:Int,_ b:Int) {
    let count = nums.count
    if a == b || a < 0 || a > count - 1 || b < 0 || b > count - 1 {
        return
    }
    (nums[a],nums[b]) = (nums[b],nums[a])
}
swap(&nums, 1, 3)
print(nums)

注意

  1. 为了防止数组越界或者a和b的值相等,进行一些特殊逻辑处理
  2. 我们可以使用元组的方式进行交互
  3. 为了适配各种类型 我们采用泛型方式交互

相关文章

  • swift 面试题(不断更新)

    给一个数组,要求写一个函数,交换数组中的两个元素 使用 注意:swift 泛型,Tuple,以及对异常处理的思考。...

  • Swift | 泛型交换数组中两个元素

    先声明一个可变数组 元素交换核心代码 注意 为了防止数组越界或者a和b的值相等,进行一些特殊逻辑处理我们可以使用元...

  • swift泛型整理

    swift泛型知识主要包括:泛型函数、泛型协议、泛型类型、泛型约束。 一、泛型函数。 如:一个交换两个变量值的函数...

  • iOS面试题(二)

    1、给⼀个数组,要求⽤swift写⼀个函数,交换数组中的两个元素. var nums = [1,2,3,4,5,6...

  • 实战技术

    第一课 泛型 泛型注意点:在数组中,一般用可变数组添加方法,泛型才会生效,如果使用不可变数组,添加元素,泛型没有效...

  • Swift 面试题(1)

    Swift面试题(1)Swift面试题(2) 1. 给一个数组,要求写一个函数,交换数组中的两个元素 2. 下面代...

  • iOS开发 - 「Swift 学习」Swift泛型

    Swift泛型 泛型函数 以上是交换两个任意相同类型值的泛型函数,T是一个占位命名类型,swift不会查找命名为T...

  • typescript之泛型

    泛型是什么,为什么要使用泛型使用泛型定义数组中的元素类型,promise返回的数据类型等 创建泛型函数 exten...

  • [ WWDC2018 ] - Swift 泛型 Swift Ge

    Swift 泛型历史 我们首先来回顾一下 Swift 中对于泛型支持的历史变更,看看现在在 Swift 中,泛型都...

  • (C++实现)经典排序算法

    1. 交换排序 根据数组中两个元素值的大小来交换两个元素在数组中的位置。 1.1 冒泡排序 1.1.1 基本思想:...

网友评论

    本文标题:Swift | 泛型交换数组中两个元素

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