Shuffle Array Swift 3

Wie kann ich die unten stehende Funktion in @ konvertiereswift 3? Erhält gerade einBinary operator '..<' cannot be applied to operands of type 'Int' and 'Self.IndexDistance' Error

extension MutableCollection where Index == Int {
  /// Shuffle the elements of `self` in-place.
  mutating func shuffleInPlace() {
    // empty and single-element collections don't shuffle
    if count < 2 { return }

    for i in 0..<count - 1 { //error takes place here
      let j = Int(arc4random_uniform(UInt32(count - i))) + i
      guard i != j else { continue }
      swap(&self[i], &self[j])
    }
  }
}

Referenz:https: //stackoverflow.com/a/24029847/522207

Antworten auf die Frage(8)

Ihre Antwort auf die Frage