Swift Extension Array+Extension(源码)

📅 2026/7/21 17:00:29 👁️ 阅读次数 📝 编程学习
Swift Extension Array+Extension(源码)

一直觉得自己写的不是技术,而是情怀,一个个的教程是自己这一路走来的痕迹。靠专业技能的成功是最具可复制性的,希望我的这条路能让你们少走弯路,希望我能帮你们抹去知识的蒙尘,希望我能帮你们理清知识的脉络,希望未来技术之巅上有你们也有我。

Swift Extension Array+Extension(源码)

2026.07.20对去重的写法进行了更新

本封装目前封装了一个,对数组中的元素进行去重

文章目录

    • 效果
    • 图片代码
    • 使用代码

效果

图片代码

使用代码

import UIKit import SnapKit // 假设我们有一个包含多个用户的结构体 struct User { let id: Int let name: String } class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // 创建一个包含多个用户的数组,其中有一些用户的 id 是重复的 let users = [ User(id: 1, name: "Alice"), User(id: 2, name: "Bob"), User(id: 1, name: "Alice"), User(id: 3, name: "Charlie"), User(id: 2, name: "Bob") ] // 使用 filterDuplicates 方法筛选出 id 不重复的用户 let uniqueUsers = users.filterDuplicates { $0.id } // 打印结果 print(uniqueUsers) } }

2026.07.20对去重的写法进行了更新,去重更加灵活,可以多个属性同时去重

model.data=model.data?.filterDuplicates{($0.stationId ??0,$0.entryPortId ??0)}