読者です 読者をやめる 読者になる 読者になる

リハビリエンジニア

エンジニアリングのリハビリ中

Swiftでランダムな文字列を取得する

Swiftでランダムな文字列を取得したいことがあったので調べてみた。 すると以下の様な方法が見つかった。 参考:

【Swift2.x】指定した長さのランダムな文字列を出力する - Qiita

func getRandomStringWithLength(length: Int) -> String {

        let alphabet = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
        let upperBound = UInt32(alphabet.characters.count)

        return String((0..<length).map { _ -> Character in
            return alphabet[alphabet.startIndex.advancedBy(Int(arc4random_uniform(upperBound)))]
  })
}

学び

Range型もmapを実装している。 なんとなはなしに、配列だけの関数だと思っていた。