kotlin mutableMapの値を追加する

kotlinで、mutableMapの値を追加する手順を記述してます。「[]」にキー名を指定する方法や「put」を使用する方法があります。
環境
- OS windows11 home
- java 19.0.1
- kotlin 1.7.20-release-201
手順
mutableMapの値を追加するには、以下の構文で可能です。
map名[key] = 値
or
map名.put = ( key , 値 )
実際に、追加してみます。
fun main() {
val m = mutableMapOf('a' to 1, 'b' to 2, 'c' to 3)
m['d'] = 4
m.put( 'e', 5 )
println(m) // {a=1, b=2, c=3}
}
追加されていることが確認できます。
演算子で追加することも可能です。
fun main() {
val m = mutableMapOf('a' to 1, 'b' to 2, 'c' to 3)
m += 'd' to 4
println(m) // {a=1, b=2, c=3, d=4}
}
異なる型を指定
異なる型を指定した場合は、エラーとなります。
fun main() {
val m = mutableMapOf('a' to 1, 'b' to 2, 'c' to 3)
m += 'd' to "aaa"
println(m)
// error: type mismatch: inferred type is Map<Char,
//{Comparable<*> & java.io.Serializable}> but MutableMap<Char, Int> was expected
}
複数追加
複数の値を追加する場合は、同じmapを演算子で追加することで可能です。
fun main() {
val m = mutableMapOf('a' to 1, 'b' to 2, 'c' to 3)
m += mutableMapOf('d' to 1, 'e' to 2, 'f' to 3)
println(m)
// {a=1, b=2, c=3, d=1, e=2, f=3}
}
同じkeyを指定すると、変更されます。
fun main() {
val m = mutableMapOf('a' to 1, 'b' to 2, 'c' to 3)
m += mutableMapOf('d' to 1, 'e' to 2, 'f' to 3)
println(m)
// {a=1, b=2, c=3, d=1, e=2, f=3}
m += mutableMapOf('d' to 4, 'e' to 5, 'f' to 6)
println(m)
// {a=1, b=2, c=3, d=4, e=5, f=6}
}
keyが存在している場合
keyが存在している場合は、変更となります。
fun main() {
val m = mutableMapOf('a' to 1, 'b' to 2, 'c' to 3)
m['b'] = 5
m.put( 'c', 6 )
println(m) // {a=1, b=5, c=6}
}
-
前の記事
PostgreSQL 指定したデータで配列を生成する 2023.02.10
-
次の記事
kotlin mutableMapの値を全て削除する 2023.02.10
コメントを書く