【Kotlin/Android】配列(list)から条件にマッチする要素を取得!findとfirstの違い

この記事からわかること
- Kotlin/Android Studioで配列(リスト)から条件にマッチする要素を取得する方法
- find/findLastとfirst/lastの違い
- firstOrNull/lastOrNullの使い方
\ アプリをリリースしました /
環境
- Android Studio:Flamingo
- Kotlin:1.8.20
配列(list)から条件にマッチする要素を取得する方法
Kotlinで配列(コレクション)から条件にマッチする要素を取得するにはfind
メソッドまたはfirst
メソッドを使用します。両者の使い方と違いをまとめていきます。
findメソッド
find
メソッドはコレクションから引数に渡した条件に最初にマッチする要素を取得するためのメソッドです。マッチするものがない場合はnull
が返ります。
引数に渡した条件に最後にマッチする要素を取得したい場合はfindLast
を使用します。
first/lastメソッド
first
メソッドは引数違いでただ単にコレクションの最初の要素を取得するものとfind
同様にコレクションから引数に渡した条件に最初にマッチする要素を取得する2つがあります。マッチするものがない場合はエラー:NoSuchElementException
が返ります。
引数に渡した条件に最後にマッチする要素を取得したい場合はlast
を使用します。
firstOrNull/lastOrNull
エラーを発生させたくない場合はfirstOrNull
/lastOrNull
を使用することで存在しなかった場合にnull
を返させることができます。
両者の違いまとめ
- find:マッチするものがなかった場合はnullを返す
- first:マッチするものがなかった場合はエラーを返す
まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。
ご覧いただきありがとうございました。