extension Array {
mutating func shuffle(fromIndex:Int) {
self[fromIndex...].shuffle()
}
func shuffled(fromIndex:Int) -> [Element]{
return self[..<fromIndex] + self[fromIndex...].shuffled()
}
}
var arr = [0,1,2,3,4,5,6,7,8,9]
arr.shuffle(fromIndex: 4) // 0,1,2,3,x,x,x,x,x,x - x - any of the value of 4...9
let arr2 = [0,1,2,3,4,5,6,7,8,9]
var arr3 = arr2.shuffled(fromIndex: 4)
Для mutating func shuffle(fromIndex:Int)
для работы массив должен быть var
.Это не будет работать с let
.func shuffled(fromIndex:Int) -> [Any]
- для перемешанной копии массива let