こんにちは😃
今回は、集合体の1つであるマップの応用をみていきます。
マップは、キーと値のペアになります。
なので、キーだけの集合体「keys」、値だけの集合体「values」
というプロパティを持ちます。
復習も合わせてマップの処理を書いてみましょう。
fun main(args: Array<String>) {
println(“処理開始ーーーー”)
println(“〜動物リスト〜”)
val animalmap = mapOf(“ライオン” to 1,”シマウマ” to 3,”トラ” to 5,”ゾウ” to 1)
for (key in animalmap.keys) {
print(key + “は、”)
println(animalmap.get(key).toString() + “匹”)
}
println(“ーーーー処理終了”)
}
上記の処理は、keyを動物、valueを数字にしています。
for文を使って、keyを取り出し、get関数を使用して、
それに対応するvalueを取り出し動物と匹数を出力しています。
実行してみましょう。
keyに対応するvalueが表示されていますね。
では、このマップを使用して、マップの情報を取り出す処理を
書いてみます。
println(“①:” + animalmap.size)
println(“②:” + animalmap.count())
println(“③:” + animalmap.containsKey(“シマウマ”))
println(“④:” + animalmap.containsValue(1))
println(“⑤:” + animalmap.get(“トラ”))
println(“⑥:” + animalmap.isEmpty())
①は、関数でなくプロパティのsizeで、要素数を取得します。
②は、count関数で同じく要素数を取得しますが、関数なので引き数
を設定することができます。
なお、同じく要素数を取得できるlength関数は使用できませんでした。
③は、containsKey関数で、同じkeyがマップにあればtrueを
返します。
④は、containsValue関数で、同じvalueがあればtrueを返します。
⑤はget関数で、keyに対応するvalueを返します。
⑥はisEmpty関数で、リストにもありましたが、空かどうかの判定
をします。空であればtrueを返します。
実行すると以下の通りになります。
リストと似ているようで使用できる関数もちょっと違います。
1つ1つ覚えていくと便利ですね。
今回はここまで🤚
では、また次回。