Kotlin 標準・便利関数リスト
let→ オブジェクトが非nullなら処理を行い、最後の値を返す
also
→ 受け取ったオブジェクトを返しつつ、副作用的処理を実行
apply
→ オブジェクトの初期化をスコープ内で簡潔に書ける
run
→ スコープ関数。最後の式の値を返し処理をまとめる
with
→ オブジェクトを引数に取り、まとめて操作できる
takeIf
→ 条件を満たせばそのオブジェクトを返し、違えばnull
takeUnless
→ 条件を満たさなければそのオブジェクトを返す
repeat
→ 指定回数だけ処理を繰り返す簡単ループ
lazy
→ 初回アクセス時に評価され、結果をキャッシュする
measureTimeMillis
→ ブロックの処理時間をミリ秒で計測できる
map
→ コレクションの各要素を変換して新しいリストを作る
filter
→ 条件を満たす要素だけを抽出したリストを作る
forEach
→ コレクションの各要素に処理を順番に適用する
first
→ 条件を満たす最初の要素を返す(なければ例外)
firstOrNull
→ 条件を満たす最初の要素を返す(なければnull)
last
→ 条件を満たす最後の要素を返す(なければ例外)
lastOrNull
→ 条件を満たす最後の要素を返す(なければnull)
any
→ コレクションの中に条件を満たす要素があるか判定
all
→ コレクションの全要素が条件を満たすか判定
none
→ コレクションに条件を満たす要素がないか判定
count
→ コレクションの要素数や条件を満たす数を返す
distinct
→ 重複を除いた要素だけの新しいリストを返す
sorted
→ 要素を昇順に並べ替えたリストを返す
sortedBy
→ 指定キーに基づいて要素を昇順に並べ替える
maxByOrNull
→ 指定キーが最大の要素を返す(空ならnull)
minByOrNull
→ 指定キーが最小の要素を返す(空ならnull)
groupBy
→ 指定キーごとに要素をまとめて Map を作成する
partition
→ 条件に合う要素と合わない要素をペアに分ける
zip
→ 2つのコレクションを組み合わせてペアのリストを作る
flatten
→ ネストされたリストを1つに平坦化して返す