Как выбрать несколько элементов массива в Swift 4.2? - PullRequest
1 голос
/ 09 мая 2019

В настоящее время создаю небольшое приложение для викторины, и я храню вопросы в массиве.

Это метод, который я опробую, но он показывает только один вопрос.

var questionList = ["Question1","Question2","Question3","Question4","Question5"]
print(questionList.randomElement()!)

Как выбрать несколько случайных элементов оттуда?

Допустим, у меня есть 100 вопросов, и я хочу показать только группу случайных 10 вопросов ??

1 Ответ

5 голосов
/ 09 мая 2019

Перемешать массив и получить первые 10 элементов, используя префикс (_:)

Если максимальная длина превышает количество элементов в коллекция, результат содержит все элементы в коллекции.

let arr = Array(1..<100)
let shuffledArr = arr.shuffled()
print(shuffledArr.prefix(10))//[35, 61, 9, 80, 68, 37, 22, 79, 57, 32]

Убедитесь, что длина массива больше, чем количество подмассивов

let questionList = ["Question1","Question2","Question3","Question4","Question5"] 
print(questionList.shuffled().prefix(2))//["Question5", "Question2"]
...