100%自分の足で栃木県内及び近隣の公園巡り

100%自分の足で栃木県内及び近隣の公園や道の駅に行ってきます。その付近で食べた料理も紹介します。そしてたまにプログラミングやFXもやります。

Kotlin勉強.vo22 List・MutableList

こんにちは、レールカラレートです。

今回はListの勉強をしていきます。

 

前回の勉強

 

www.forties.blog

 

 ListとはArrayと似ています。

まずはListでArrayみたいなコードを書いてみましょう。

 

List1

 

val a : List<Int> = listOf()と書いている2行目だけが違いますね。

内容に関しては完全に同じです。

<>の中の型を変えることによって他の型でも同じように使えます。

Array同様省略もも出来ます。

 

List2

 

では、書き方が違うだけで同じものが何故あるのでしょうか?

それは、あとから要素の中身を変えられるかどうかの違いです。

Arrayは書き換え可能で、Listは書き換え不可(コンパイルエラーになる)

それではArrayからコードを見ていきましょう。

 

List3

 

上記の通りArrayでは要素の値をあとから変更出来ました。

それではListで同じことをやってみたいと思います。

 

List4

 

あとから変えられないので4行目でエラーになりました。

もしかしたら宣言がvalだから?varだったら変えられるかも?

コードを書いてみましたが宣言を変えても同じエラーでした。

どうやってもListの書き換え不可を可能には出来ないようです。

 

Array 書き換え可能

List    書き換え不可

 

上記の違いが分かったところで共通した部分もあります。

1度作った要素数の増減出来ないことです。

では、あとから要素数を増減するにはどうすればいいでしょうか?

それは、Listの親戚の「MutableList」を使うことで要素数の数を変えられます。

 

 

List5

 

上記のコードは最初に3つの要素を作って、追加で1つ要素を足して4つの要素にしてみました。

変数.add()で追加することが出来ます。

今回は最後に足しましたが、任意の場所に足すことも出来ます。

何番目か決めるときに気を付けることは最初は0から始まります。

そこを間違えると意図せぬ場所に組み込まれるので気を付けてください。

 

List6

 

変数.add(何番目か , 追加する値)にすることで任意の場所へ追加出来ます。

もちろん逆に減らすことも出来ます。

 

List7

 

減らすときは変数.removeAt(指定の要素番号)で減らせます。

増減したい場合はMutableListは便利ですね。

List・MutableListの説明は以上となります。

次回はSetの説明をします。

 

 

www.forties.blog