数组 – 如何在Swift中查找列表项的索引?

数组 – 如何在Swift中查找列表项的索引?,第1张

概述我试图通过搜索列表找到项索引。有人知道如何做到吗? 我看到有list.StartIndex和list.EndIndex bu我想要的东西像python的list.index(“text”) 由于swift在某些方面比面向对象更有功能(和数组是结构体,而不是对象),使用函数“find”对数组进行 *** 作,返回一个可选值,因此准备处理一个nil值: let arr:Array = ["a","b","c" 我试图通过搜索列表找到项索引。有人知道如何做到吗?

我看到有List.StartIndex和List.Endindex bu我想要的东西像python的List.index(“text”)

由于swift在某些方面比面向对象更有功能(和数组是结构体,而不是对象),使用函数“find”对数组进行 *** 作,返回一个可选值,因此准备处理一个nil值:
let arr:Array = ["a","b","c"]find(arr,"c")!              // 2find(arr,"d")               // nil

Swift 2.0的更新:

Swift 2.0不再支持旧的find函数!

使用Swift 2.0,Array获得使用在CollectionType的扩展中定义的函数(该Array实现)来查找元素的索引的能力:

let arr = ["a","c"]let indexOfA = arr.indexOf("a") // 0let indexOfB = arr.indexOf("b") // 1let indexOfD = arr.indexOf("d") // nil

此外,在CollectionType的另一个扩展中支持查找数组中满足谓词的第一个元素:

let arr2 = [1,2,3,4,5,6,7,8,9,10]let indexOfFirstGreaterThanFive = arr2.indexOf({
let indexOfA = arr.index(of: "a")
> 5}) // 5let indexOfFirstGreaterThanOneHundred = arr2.indexOf({ > 100}) // nil

注意,这两个函数返回可选值,如前所述。

Swift 3.0的更新:

注意indexOf的语法已更改。现在使用:

该方法的详细文档可以在https://developer.apple.com/reference/swift/array/1689674-index找到

总结

以上是内存溢出为你收集整理的数组 – 如何在Swift中查找列表项的索引?全部内容,希望文章能够帮你解决数组 – 如何在Swift中查找列表项的索引?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1065108.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存