vb2017 community版を使っています。
リストの入れ子を使っています。
理由は、本当はdatatableを使いたかったのですが、datatableとlistであればdatatableはかなり遅いとネットに書いてあったため、リストの入れ子を使っています。
リストの検索はBinarySearchみたいなのを使うつもりです。
なかなかリストの入れ子の検索はネットで見つからなくて。
リストの入れ子の検索はどうすればよいのでしょうか?
子のリストの1列目を検索しようと思っています。
(IDを入れるつもりなので)
よろしくお願いします。
データ構造を追記します。
VB.NET
1Dim lstList As New List(Of String) 2Dim lstTable As New List(Of List(Of String))() 3 4lstList.Add("001") 5lstList.Add("テスト1") 6lstList.Add("100") 7lstList.Add("200") 8 9lstList.Add("002") 10lstList.Add("テスト2") 11lstList.Add("101") 12lstList.Add("201") 13 14Dim idx As Integer = lstList.BinarySearch("002") 15 16lstTable.Add(lstList)
よろしくお願いします。
リストの内容がわかんないので、コードを追記して下さい。
具体的にどのようなデータ構造なのか、サンプルでもいいのでソースで示してください。
リストの検索はBinarySearchみたいなのを使うつもりとのことですが、検索に独自のルーチンを作成してしようするということですか?
リストのリストより ID プロパティを持つクラスのリストの方がいいと思います。
DataTable は List(Of T) より重いかもしれませんが、ユーザーが認識できるほど重い・遅いと言うことはないと思います。適材適所で考えるべきです。
例えば Windows Forms アプリで DB のデータを DataGridView に表示してユーザーが編集を行うということなら DataTable 一択です。
ASP.NET MVC とかで Enitity Framework を使うなら List(Of T) と言うことになります。
XY問題に陥らないよう、Xも質問に書きましょう。
質問の「検索」というのは具体的にどのようにしたいのか書いてください。例えば名前とかの文字列の列があって、SQL の LIKE 句を使うような感じで検索してくるとか?
回答1件
あなたの回答
tips
プレビュー