gpt4 book ai didi

arrays - 从 Swift 数组中获取随机元素出现

转载 作者:行者123 更新时间:2023-11-28 06:20:16 25 4
gpt4 key购买 nike

我有一个包含 7 个元素的数组:var myArray = [0, 0, 0, 0, 0, 0, 0]

我在处理过程中随机将这些 0 翻转为 1:var myArray = [1, 0, 0, 1, 0, 1, 1]

我的问题是,如何随机获得仍然为零的元素之一?例如,我希望系统能够采用上面的第二个数组并随机选择索引 1、2 或 4。

这让我难住了好几个小时,如有任何帮助,我们将不胜感激!

最佳答案

您可以枚举数组,过滤等于零的元素并映射元素偏移量。然后你只需要使用 arc4random_uniform 随机选择其中之一:

let myArray = [1, 0, 0, 1, 0, 1, 1]

let myZeroIndices = myArray.enumerated()
.filter{ $0.element == 0 }
.map{ $0.offset } // [1, 2, 4]

let randomIndice = myZeroIndices[Int(arc4random_uniform(UInt32(myZeroIndices.count)))] // 4

关于arrays - 从 Swift 数组中获取随机元素出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43823780/

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