2016-04-22 2 views
2

Кто-то знает, возможно ли создать фиксированный размер ArrayList? Или мне нужно обязательно использовать массив?Установить фиксированный размер ArrayList

Стараюсь с этим

Dim array As ArrayList 

array = New ArrayList(10) 

и

array.Capacity = 10 

Но я могу добавить более чем 10 пунктов, и это Безразлично «т показать мне какие-либо ошибки, как я ожидал.

Благодаря

ответ

2

Просто используйте Array этот размер не изменится, если вы явно не кодировать его.

Dim myArray(9) As String 'or whatever object you need Integer, etc. 

Обратите внимание, что определение 9 будет создавать 0-9 т.е. 10 элементов в массиве

(ArrayLists are bad во многих многих отношениях, так что не использовать их)

0

Capacity из ArrayList говорит максимум количество позицийArrayList в настоящее время можно использовать. Capacity будет автоматически увеличивается во время выполнения, когда в ArrayList добавлено больше предметов.

Для фиксированного размера, используйте Array, как указано ниже:

Dim intArray(9) As Integer 
0

Если вы желаете, чтобы хранить различные типы в вашей коллекции вы можете использовать;

Dim myArray(5) As Object 

Если вы хотите, чтобы прочитать их назад, как тип вы положили их в, как вы бы преобразовать их тип обратно то, что они были изначально.

Я не рекомендую это как подход. Если вы хотите это сделать, я предлагаю вам создать пользовательский объект, например класс или structures, который будет содержать свойства для каждого из значений, которые вы хотите установить.

Смежные вопросы