相关疑难解决方法(0)

如何在Swift中对数组进行洗牌?

如何在Swift中随机化或混洗数组中的元素?例如,如果我的阵列由52张扑克牌,我想洗牌的阵列,以洗牌.

arrays shuffle swift

297
推荐指数
8
解决办法
8万
查看次数

如何在swift数组中交换元素?

我有一个简单的数组,如:

var cellOrder = [1,2,3,4]
Run Code Online (Sandbox Code Playgroud)

我想交换元素,比如假设第二个元素与第一个元素.

结果将是:

[2,1,3,4]
Run Code Online (Sandbox Code Playgroud)

我知道我们可以用exchangeObjectAtIndexNSMutableArray,但我想用快捷阵列.有没有办法用swift [Int]数组做同样的事情?

arrays nsmutablearray ios swift

33
推荐指数
3
解决办法
2万
查看次数

从Swift中的数组中获取随机元素

我有一个像这样的数组:

var names: String = [ "Peter", "Steve", "Max", "Sandra", "Roman", "Julia" ]
Run Code Online (Sandbox Code Playgroud)

我想从该数组中获取3个随机元素.我是从C#来的,但是我很快就不知道从哪里开始.我想我应该首先将阵列洗牌,然后从中挑选前3个项目?

我尝试使用以下扩展名对其进行随机播放:

extension Array
{
    mutating func shuffle()
    {
        for _ in 0..<10
        {
            sort { (_,_) in arc4random() < arc4random() }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但它然后说"'()'在"shuffle()"的位置不能转换为'[Int]'".

为了挑选我使用的一些元素:

var randomPicks = names[0..<4];
Run Code Online (Sandbox Code Playgroud)

到目前为止看起来不错.

怎么洗牌?或者有没有人有更好/更优雅的解决方案?

arrays random shuffle swift

13
推荐指数
3
解决办法
1万
查看次数

标签 统计

arrays ×3

swift ×3

shuffle ×2

ios ×1

nsmutablearray ×1

random ×1