Задача из двумерного массива вытаскивать его элементы в виде массивов.
//объявили двумерный массив.
int[,] array2d = {{1,2,3},{2,3,4},{3,4,5}};
//надо сохранить первый элемент {1,2,3} в переменную.
int[] array1d = array2d[0];
И получаем следующую ошибку:
Неверное число индексов в массиве[] требуется 2
Я так понимаю обязательно надо указывать оба индекса.
Вопрос: Как в таком случае получить любой подмассив из двумерного массива по номеру элемента?
Как уже написали в комментариях, для этой цели проще использовать массив массивов, а не многомерный массив:
int[][] array2d = new int[][] {new[]{1,2,3}, new[]{2,3,4}, new[]{3,4,5}};
int[] array1d = array2d[0];
Если нужно вытащить строку именно 2D-массива, то, боюсь, удобного способа нет. Неудобные способы перечислены в похожем вопросе на английском: How to get a complete row or column from 2D array in C#.
В частности, @ShimonDoodkin предлагает метод-расширение:
public static class MyExtensions
{
public static T[] GetRow<T>(this T[,] array, int wanted_row)
{
int l = array.GetLength(1);
T[] row = new T[l];
for(int i=0; i<l; i++)
{
row[i] = array[wanted_row,i];
}
return row;
}
}
, который можно будет использовать так:
int[,] array2d = {{1,2,3},{2,3,4},{3,4,5}};
//надо сохранить первый элемент {1,2,3} в переменную.
int[] array1d = array2d.GetRow(0);
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Подскажите, пожалуйста, как правильно сериализовывать/десериализовывать объекты в XML, имеющие взаимные ссылкиНапример, есть классы Car и Garage
Есть две таблицы comments и usersОни связаны между собой
На сайте под управлением Wordpress есть форма сделана c помощью плагина Contact Form 7Как добавить во входящий имейл из формы еще функцию get_page_link() Мне...