[Kotlin]リスト(List)の特定のインデックスの要素を置換するには?

Kotlin

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

リスト(List)の指定したインデックスの要素を置換する方法を紹介します。

スポンサーリンク

方法

リスト(List)の特定のインデックスの要素を置換する方法は、2つあります。

[]

ひとつは、[]を使う方法です。

まず、「array[index]」のように、配列の置換したいインデックスの要素にアクセスします。

そして、「array[index]」に置換後の新しい要素を代入します。

//array=対象の配列, index=インデックス, newItem=新しい要素
array[index] = newItem

上記の代入は、配列(array)の[]内に指定したインデックスの要素を代入した要素に置換します。

[]で要素を置換するには、リストがMutableListである必要があります。

使用例

fun main() {
    val nums = mutableListOf(1, 2, 3, 4, 5)
    
    //インデックス2の要素を10に置換
    nums[2] = 10
    
    println(nums)
}
出力:
[1, 2, 10, 4, 5]

set()

もうひとつは、set()を使う方法です。

まず、リストからset()を呼び出します。

そして、set()の第1引数にインデックス、第2引数に新しい値を指定します。

//list=対象のリスト, index=インデックス, newItem=新しい要素
list.set(index, newItem)

上記のset()は、リストの第1引数に指定したインデックスの要素を第2引数に指定した要素に置換します。

set()を使用するには、リストがMutableListである必要があります。

使用例

fun main() {
    val nums = mutableListOf(1, 2, 3, 4, 5)
    
    //インデックス2の要素を10に置換
    nums.set(2, 10)
    
    println(nums)
}
出力:
[1, 2, 10, 4, 5]

まとめ

リスト(List)の特定のインデックスの要素を置換する方法は、次の2つです。

  • []を使う方法
    array[index] = newItem
  • set()を使う方法
    list.set(index, newItem)

コメント

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