Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Есть ли метод, позволяющий определить сколько строк двумерного массива заполнено в с#?

Митина Кристина Ученик (178), на голосовании 4 месяца назад
Только начинаю осваивать c# и столкнулась с проблемой, у меня есть массив массивов M[6] [], он иногда заполняет все строки, иногда нет, при выводе если обратиться к незаполненной строке, выдаст ошибку. Есть ли какой-то метод для подсчета именно заполненных строк? Или как запустить цикл вывода так, чтобы не обращался к пустому элементту?Просто не хочется лишний счетчик создавать. Думала GetLength поможет, но он выводит число строк в целом. Есть что-то такое, но только для заполненных?
Голосование за лучший ответ
Татьяна Просветленный (36384) 5 месяцев назад
В C# для решения вашей задачи можно использовать метод, который проверяет, является ли строка массива null или нет. Двумерный массив в C# может содержать строки, которые еще не инициализированы, что и вызывает ошибку при попытке обращения к таким строкам.
 using System; 

class Program
{
static void Main()
{
// Инициализация массива массивов (jagged array)
int[][] M = new int[6][];

// Пример заполнения некоторых строк
M[0] = new int[] { 1, 2, 3 };
M[2] = new int[] { 4, 5 };
M[4] = new int[] { 6, 7, 8, 9 };

// Подсчет заполненных строк
int filledRows = 0;
for (int i = 0; i < M.Length; i++)
{
if (M[i] != null)
{
filledRows++;
}
}

Console.WriteLine("Количество заполненных строк: " + filledRows);

// Вывод только заполненных строк
for (int i = 0; i < M.Length; i++)
{
if (M[i] != null)
{
Console.Write("Строка " + i + ": ");
for (int j = 0; j < M[i].Length; j++)
{
Console.Write(M[i][j] + " ");
}
Console.WriteLine();
}
}
}
}
Похожие вопросы