Как получить последний элемент в массиве StringCollection

Я пытаюсь получить последний элемент в массиве коллекции строк с этим:

scWords(0).Item(0) & "-" & scWords(0).Item(scWords(0).Count))

Это продолжает говорить вне диапазона

2 ответа

Решение

Массив / коллекция в.NET имеет нулевую индексацию. Это означает, что первая запись называется 0, а не 1.

Рассмотрим этот список:

0 Apple
1 Orange
2 Kiwi
3 Watermelon

Список содержит 4 элемента, но, поскольку индексирование основано на 0, последний элемент (Арбуз) 3не 4, Вот почему, когда вы используете .Count (который возвращает количество элементов в списке), он говорит вне диапазона.

Как видно из примера, используя .Count -1 вернет последний элемент.

Это еще одно решение. Если вы не хотите использовать "считать"

aArray(Array.LastIndexOf(aArray, Not Nothing) + 1)
Другие вопросы по тегам