【Swift】
配列の中からランダムに1つの要素を取得する方法
Array.randomElement()の使用
投稿日 2021/09/26 更新日 2021/09/26
こんにちは。当サイトの管理者「元木皇天」です。
今回はSwiftで、配列の中からランダムに1つの要素を取得する方法について解説いたします。
環境
OS:MacOS Big Sur
Xcode:バージョン12.3
Swift:バージョン5.3
やりたいこと
配列からランダムに1つの要素を取得する
参考文献
・SwiftUIではじめるiPhoneアプリプログラミング入門
・詳細! SwiftUI iPhoneアプリ開発入門ノート[2020] iOS 14+Xcode 12対応
・randomElement() Apple Developer Site
配列からランダムに要素を取得する方法
配列からランダムに1つの要素を取得するにはrandomElement()を使用します。
使い方は以下の通りです。
let array: [String] = ["A", "B", "C", "D", "E"] if let value = array.randomElement(){ print(value) }
実際に使用すると以下のような感じになります。
ここで注意が必要なのは、randomElement()はOptional型で値が返ってくるため、使用する際にはアンラップして使用する必要があります。
randomElement()の仕様補足
本題の”配列からランダムな値を1つ取得する”方法は先ほどの項で説明したので以上になります。
ここではrandomElement()の仕様について補足情報を記載しておこうと思います。
1.返却値がOptional型である
こちらは先ほどの項でも話しましたが、取得結果がOptional型で返ってくるので、使用する際はアンラップを忘れずに行いましょう。
2.配列が空の場合nilが返却値になる
こちらはApple Developer Siteにも記載がある通り、配列が空の場合nilが返却されます。
実際に動きを確認すると、nilが返ってきていることがわかります。
まとめ
配列の中からランダムに1つの要素を取得するには
randomElement()
を使用する