2011-02-25 45 views
1

10要素の2次元配列を使用していますが、コードが非常に遅いです。2次元配列のクリア

Dim myArray As String(,) 
For i=0 to 100 
    'Clear Array. (This line is really slow) 
    myArray = New String(,) {{"", ""}, {"", ""}, {"", ""}, _ 
    {"", ""}, {"", ""}, {"", ""}, {"", ""}, {"", ""}, {"", ""}, {"", ""}} 

    'Populate array 
    fillArray(myArray) 

    'Do stuff with array 
    useArray(myArray) 
Next i 

私はforループの繰り返しごとに新しい空の配列を作成します。私は同じ配列を使用することができますが、代わりにそれをクリアする方法はありますか?

答えて

1

vb.netでは2次元配列を素早く作成する方法はありませんか?それはのようなものだった:

Dim rectArray(10, 10) As String 

その後、あなたはいつものように取り込むことができます。

Dim rectArray(,) As String = {{'', '', '' ....etc 

役立つかもしれないいくつかの読書 - `Array.Clear`は、要素を設定することをいえlink

+0

あなたはそうです!少しの研究の後、構文は実際にはarr = New String(9、1){}となります。ありがとうございました! – Urbycoz

3

あなたの配列は何を使用しているのかはっきりしていませんが、代わりにコレクションを使用したい場合があります。

アレイのクリアについては、Array.Clearを参照してください。

+0

注意を、文字列の場合は 'Nothing'(C#の場合は' null')のデフォルト値に変更します。 – cHao

+0

配列にデータが取り込まれ、その内容が他の場所で読み取られます。そのビットは重要ではありません。私はその構造を維持しながらアレイをクリアする必要があることを示しています。 – Urbycoz

+0

+1の代わりにコレクションのために+1。 – Josaph