[Kotlin]List(リスト)の最後の要素を取得するには?

Kotlin

どうも、ちょげ(@chogetarou)です。

List(リスト)の末尾の要素を取得する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

List(リスト)の最後の要素を取得する方法は、3つあります。

last()

1つ目は、last()関数を使う方法です。

具体的な方法としては、list.last()のように、リストからlast()関数を呼び出します。

val result = list.last()

上記のlast()関数は、呼び出したリストの最後の要素を取得します。

呼び出したリストが空の場合は、エラーが発生します。

使用例

fun main() {
    val list = listOf(3, 19, 0, 39, 10)
    
    val result = list.last()
    
    println(result)
}
出力:
10

lastOrNull()

2つ目は、lastOrNull()関数を使う方法です。

具体的には、list.lastOrNull()のように、リストからlastOrNull()関数を呼び出します。

val result = list.lastOrNull()

上記のlastOrNull()関数は、呼び出したリストの最後の要素を取得します。

もし、呼び出したリストが空の場合は、Nullを返します。

呼び出したリストが空の場合にデフォルト値を返したいならば、エルビス演算子を使います。

//リストが空の場合は、valueを返す
val result = empty.lsatOrNull() ?: value

使用例

fun main() {
    val list : List<Int> = listOf(3, 19, 0, 39, 10)
    val empty : List<Int> = listOf<Int>()
    
    val result = list.lastOrNull()
    var result2 = empty.lastOrNull() ?: -1
    
    println(result)
    println(result2)
}
出力:
10
-1

lastIndex

3つ目は、lastIndexプロパティを使う方法です。

具体的には、list[list.lastIndex]のように、リストのlastIndexプロパティのインデックスにアクセスします。

val result = list[list.lastIndex]

リストのlastIndexプロパティのインデックスにアクセスすることで、リストの最後の要素を取得できます。

List(リスト)が空の場合にインデックスにアクセスすると、エラーが発生します。

なので、リストが空ではないか確認する必要があります。

使用例

fun main() {
    val list = listOf(3, 19, 0, 39, 10)
    
    val result = list[list.lastIndex]
    
    println(result)
}
出力:
10

まとめ

List(リスト)の最後の要素を取得する方法は、次の3つです。

  • last()を使う方法
    val result = list.last()
  • lastOrNull()を使う方法
    val result = list.lastOrNull()
  • lastIndexを使う方法
    val result = list[list.lastIndex]

コメント

タイトルとURLをコピーしました