Swift Language Generazione di numeri casuali


Esempio

arc4random_uniform(someNumber: UInt32) -> UInt32

Questo ti dà numeri casuali nell'intervallo da 0 a someNumber - 1 .

Il valore massimo per UInt32 è UInt32 (ovvero, 2^32 - 1 ).

Esempi:

  • Testa o croce

      let flip = arc4random_uniform(2) // 0 or 1
    
  • Rotolo di dadi

      let roll = arc4random_uniform(6) + 1 // 1...6
    
  • Random day in October

      let day = arc4random_uniform(31) + 1 // 1...31
    
  • Anno casuale negli anni '90

      let year = 1990 + arc4random_uniform(10)
    

Forma generale:

let number = min + arc4random_uniform(max - min + 1)

dove number , max e min sono UInt32 .

Gli appunti

  • C'è un leggero bias di modulo con arc4random quindi è preferito arc4random_uniform .
  • Puoi lanciare un valore UInt32 su un Int ma UInt32 attenzione a non andare oltre il raggio d'azione.