Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: ВНИМАНИЕ, ВОПРОС!!! Добавлено: 17.06.05 17:23  

Автор вопроса:  FoxMalder133 | ICQ: 305919394 
Как из обьекта типа "Array" удалить елемент массива.

На похвалы я щедр.

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #1
Добавлено: 18.06.05 12:22
Просто сдвинуть все элементы справа от него на один влево:

Dim a() As Int32 = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
Dim deletedindex As Int32 = 5
For i As Int32 = deletedindex To a.GetUpperBound(0) - 1
   a(i) = a(i+1)
Next


Можно также отказаться от Array и использовать ArrayList. Он работает
по другим принципам, работает на порядок медленнее, но зато там жетско
не задается размер массива и можно очень просто удалять/добавлять
элементы в середине массива.

Ответить

Номер ответа: 2
Автор ответа:
 FoxMalder133



ICQ: 305919394 

Вопросов: 8
Ответов: 17
 Профиль | | #2 Добавлено: 21.06.05 11:25
Павел, благодарю за интерестную альтернативу.
Вариант с ArrayList тоже хорош, но при присваивании массива Array переменной типа ArrayList получается коллекция массивов, что лишает возможности использовать методы Remove, RemoveAt по отношению к элементу вложеного массива.


  Dim a() As Int32 = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
        Dim arr1 As Array
        Dim arrLst As New ArrayList
        
        arr1 = a

        arrLst.Add(arr1)
            

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам