代表者の戯言

List(Of String)を使いこなそう!




VisualBasicには列という考え方があり、連結して関係するデータを一つのリストの中に組み込むことができる機能がある。

例えば、顧客データがあったとして、いちいち性別、身長、体重、血液型、趣味、出身地のデータを別々に保存するよりは、一連のリストととしてまとめてしまったほうが効率的な場合がある。下記はリストを利用したサンプルである。

'まず、定義

Dim List1 As New List(Of String)

'リストに要素を追加

List1.Add("A")

List1.Add("B")

List1.Add("C")


'リストの一つ目になにが入っているのかを確認してみる

MessageBox.Show(List1(0))


'指定した位置に無理やりデータを入れ込む

List1.Insert(1, "BB")

‘messagebox.showを利用し、リストの中身を見てみる。

For i As Integer = 0 To List1.Count - 1

MessageBox.Show(List1(i))

Next


'結果は下記のようになる

'A

'BB

'B

'C


'指定された文字が入っているのかどうかを確認する

If List1.Contains("BB") = True Then

MessageBox.Show("BBは入っております")

End If


'list1にはデータは何個、入っているのかを確認する

Dim listnumber As Integer

listnumber = List1.Count

MessageBox.Show("データ個数:" & listnumber)


データ例1
データ例2

*************************************************************************:

chatGPTによると、arrayを利用するよりlistを利用した方がよいらしい。理由は サイズ変更が簡単ということである。Array はサイズが固定で、一度作成したら後から要素数を自由に変えることがでない。(ReDim を使うとコピーが発生するので非効率)。List(Of T) はサイズが可変で、.Add() や .Remove() を使って簡単に要素の追加・削除ができる、とのことだ。