- - PR -
配列から文字列の一覧を作成する方法
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-04-21 16:24
ASP.NETで開発をしています。
3000個ぐらいの文字列の配列があって、その中から重複した内容は取りのぞきながら、 20個ぐらいの文字列のリストを取り出そうとしています。 以下のコードのように行ってますが、ASP.NETだと処理時間が、かなりかかってしまいます。 こんな、場合、他にいい方法ないでしょうか? よろしくお願いします。 cnt = 0 ReDim strList(0) strList(0) = "" For i = 0 To UBound(strMotoList) For j = 0 To cnt - 1 b = False If strMotoList(i) = strList(j) Then b = True Exit For End If Next If b = False Then cnt = cnt + 1 ReDim Preserve strList(cnt - 1) strList(cnt - 1) = strMotoList(i) End If Next | ||||
|
投稿日時: 2004-04-21 18:23
Dim list as ArrayList = new ArrayList()
For Each str as string In strMotoList If list.Contains(str) = False Then list.Add(str) End If Next | ||||
|
投稿日時: 2004-04-22 09:42
ありがとうございます。
一瞬で処理できるようになりました。 For Eachの構文、時々見かけてはいましたがこういう場合に力を発揮するんですね。 | ||||
|
投稿日時: 2004-04-22 10:19
う、まあ、あまりFor Eachとは関係ない話のように思いますが… 何で早くなる(何で元のは遅い)のかなど、いろいろ考えてみると勉強にはなりますよ。 |
1