Делает индекс массива, существуют

Вы можете просто создать _artcile.vue и определить, какой компонент вы хотите использовать: есть. Документы


75
задан splatto 28 April 2009 в 01:32
поделиться

9 ответов

Проверьте длину

int index = 25;
if(index < array.Length)
{
    //it exists
}
129
ответ дан 24 November 2019 в 11:26
поделиться

Что именно вы подразумеваете под "является допустимым элементом"? Вы можете просто сделать:

if (array.Length >= 26)

, который скажет вам, является ли 25 допустимым индексом в массиве или нет (при условии, что нижняя граница равна 0).

Если вам нужно узнать, ненулевой он или нет, просто используйте:

if (array[25] != null)

(или их комбинация).

Если это не помогло, пожалуйста, дайте более точное значение «действительный» для вашей проблемы.

17
ответ дан 24 November 2019 в 11:26
поделиться

Предполагая, что вы также хотите проверить, не равен ли элемент нулю

if (array.Length > 25 && array[25] != null)
{
    //it exists
}
10
ответ дан 24 November 2019 в 11:26
поделиться

Вы можете использовать длину массива и посмотреть, подходит ли ваше произвольное число в этот диапазон. Например, если у вас есть массив размером 10, то массив [25] недопустим, потому что 25 не меньше 10.

1
ответ дан 24 November 2019 в 11:26
поделиться

Вы можете использовать Список, чтобы проверить существование.

List<int> l = new List<int>();
l.Add(45);
...
...

if (l.Count == 25) {
  doStuff();
}
int num = 45;
if (l.Contains(num)) {
  doMoreStuff();
}
1
ответ дан 24 November 2019 в 11:26
поделиться

array.length подскажет, сколько элементов в массиве

1
ответ дан 24 November 2019 в 11:26
поделиться

Вы можете проверить, меньше ли индекс длины массива. Это не проверяет наличие нулей или других нечетных случаев, когда индексу может быть присвоено значение, но ему не было дано однозначно.

0
ответ дан 24 November 2019 в 11:26
поделиться

Вы можете проверить длину массива, чтобы увидеть, является ли элемент 25 действительным в смысле нахождения в массиве, затем вы можете использовать

if (array.Length > 25)
{ 
   if (array[25] != null)
   {
       //good
   }
}

, чтобы увидеть, установлен ли сам элемент массива.

0
ответ дан 24 November 2019 в 11:26
поделиться

Звучит очень похоже на использование массива для хранения различных полей. Это определенно кодовый запах. Я бы избегал использования массивов настолько, насколько это возможно, поскольку они обычно не подходят (или не нужны) в высокоуровневом коде.

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

0
ответ дан 24 November 2019 в 11:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: