我需要隨機化一個應用程序的數組我試圖在swift中構建,並測試我創建的函數,並將其放入操作數組中。我意識到這個問題已經在這裏問:How do I shuffle an array in Swift? 但我只是想知道爲什麼這種特定的方式不起作用。這是我的代碼:隨機化一個數組
import UIKit
var arrayOne : [String] = ["", "", "", "", ""]
func randomizeArray(array : [String]) -> [String] {
var randomizedArray : [String] = []
var copyOfArray : [String] = array
repeat {
let arrayCount : Int = array.count - 1
let randomElement : Int = Int(arc4random_uniform(UInt32(arrayCount)))
let arraySlice : String = array[randomElement]
randomizedArray.append(arraySlice)
copyOfArray.remove(at : randomElement)
} while array.count > 0
return randomizedArray
}
print(randomizeArray(array : arrayOne))
當我嘗試使用數組1打印函數時,它說「致命錯誤:索引超出範圍」。任何想法爲什麼發生這種情況
對於包含5個元素的數組,您可以輕鬆調試問題。在Xcode中單步執行代碼,您會很快看到問題出在哪裏。 –
然後擺脫所有不必要的類型註釋... –