gpt4 book ai didi

swift - 访问元组 NSArray 中的元素

转载 作者:行者123 更新时间:2023-11-30 12:25:24 24 4
gpt4 key购买 nike

我正在 swift 3.0 中开发一个项目,其中我有一个元组数组来存储数据集。保存它们后,我将这个元组数组转换为 NSArray,并使用另一个函数对该数组中的元素(对象)进行洗牌。我的要求是访问这个重新调整的数组(NSArray)中的元素。我的代码如下(请阅读评论以更好地理解)。

这是我将数据保存到元组数组的位置

 var savedSongsArray:[(title:String,healerName:String,trackUrl:URL,imageUrl: String)] = []

func getAllTracksFromSavedPath(){
for i in 0 ..< trackIdsArray.count{

savedSongsArray.append((title: songDetailsArray[i].title , healerName:songDetailsArray[i].healerName, trackUrl: uRL, imageUrl: songDetailsArray[i].imageUrl))
//savedSongsArray is my tuple array
}

let arrayToBeShuffled = savedSongsArray as NSArray // This is where I convert it to a NSArray
}

我的随机播放功能

    func shuffledSongsArray(array:NSArray) -> NSArray {
let mutableArray = array.mutableCopy() as! NSMutableArray
let count = mutableArray.count
if count>1 {
for i in ((0 + 1)...count-1).reversed(){
mutableArray.exchangeObject(at: i, withObjectAt: Int(arc4random_uniform(UInt32(i+1))))
}
}

return mutableArray as NSArray
}

一旦我打印了 mutableArray 的结果,如下所示

("indika - (index.jpeg)", "Steven Flemin", file:///Users/auxenta/Library/Developer/CoreSimulator/Devices/2B4EB1F8-FA38-4777-A274-10979F6EEB6F/data/Containers/Data/Application/CAB78797-8AB2-4DD9-8322-6F88B454BA74/Documents/5746821397741568.mp3, "https://storage.googleapis.com/feisty-beacon-159305.appspot.com/images.png")

如何访问这个元组 NSArray 中的各个元素?

最佳答案

首先,使用原生 Swift 结构体,即 Array,而不是 NSArray 和 NSMutableArray。您可以像这样访问命名元组的元素:let title = array[n].title,其中 n 是要访问的元组的索引,title 是要获取的元组的命名元素。

这应该有效:

func shuffledSongsArray(array:[(title:String,healerName:String,trackUrl:URL,imageUrl: String)]) -> [(title:String,healerName:String,trackUrl:URL,imageUrl: String)] {
let shuffledArray: [(title:String,healerName:String,trackUrl:URL,imageUrl: String)] = []
//do the shuffling here
return shuffledArray
}

let result = shuffledSongsArray(array: inputArray)
let firstHealerName = result[0].healerName

let firstHealerName = result[0].1应该会给你相同的结果

关于swift - 访问元组 NSArray 中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44279766/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com