powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / List<int> в двумерный массив
10 сообщений из 10, страница 1 из 1
List<int> в двумерный массив
    #38471502
Qwe.Qwe1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как преобразовать List<int> в двумерный массив <int>[,] - нулевой элемент - порядковый номер (1, 2, 3 и т.д.), первый элемент - значение из List'а? Используя LINQ (не обязательно).
Код: c#
1.
2.
3.
4.
5.
var l = new List<int>();
l.Add(100);
l.Add(250);
l.Add(375);
<...>


То есть должен получиться массив:
[1; 100]
[2; 250]
[3; 375]
...
Рейтинг: 0 / 0
List<int> в двумерный массив
    #38471526
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: c#
1.
var items = list.Select((a, num) => new { num = num + 1, value = a });
...
Рейтинг: 0 / 0
List<int> в двумерный массив
    #38471541
Qwe.Qwe1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо. А если List - список двумерных массивов. Их можно по аналогии объединить в один? Пробовал ToArray() - не получилось...
Код: c#
1.
2.
3.
4.
var l = new List<int[,]>();
<цикл for...>
l.Add(new int[,] { { i + 1, iValue } };
<...>
...
Рейтинг: 0 / 0
List<int> в двумерный массив
    #38471545
Qwe.Qwe1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, про первый вопрос, мне надо получить в результате int[,] - это возможно?
...
Рейтинг: 0 / 0
List<int> в двумерный массив
    #38471552
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конечно возможно. Создать свой int[,] и в цикле по IEnumerable с анонимным типом заполни его. В чем проблема?
...
Рейтинг: 0 / 0
List<int> в двумерный массив
    #38471560
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Qwe.Qwe1То есть должен получиться массив:
[1; 100]
[2; 250]
[3; 375]
У тебя неверное представление об N-мерных массивах.

Исходная постановка даст результат:

[0,0]=1
[0,1]=100
[1,0]=2
[1,1]=250
[2,0]=3
[2,1]=375

И может быть выражена кодом:

Код: c#
1.
var array = new int[,] { { 1, 100 }, { 2, 250 }, { 3, 375 } };



А то, что ты написал, больше похоже на KeyValuePair. Ты уверен, что тебе нужны именно multidimensional arrays? Для чего это тебе?
...
Рейтинг: 0 / 0
List<int> в двумерный массив
    #38471564
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Qwe.Qwe1, результат типа int[,] с помощью LINQ врядли получится сделать, но это без проблем можно выразить и без него.

Результат типа int[][] можно так получить:
Код: c#
1.
int[][] x = l.Select((num, idx) => new int[]{idx+1, num}).ToArray();
...
Рейтинг: 0 / 0
List<int> в двумерный массив
    #38471615
Qwe.Qwe1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МСУИ может быть выражена кодом:

Мне это и нужно! Спасибо.. )

2 Bazile
А это разве не LINQ с функциями расширения? Вообще, мне надо [,]... А [][] - это для чего?
...
Рейтинг: 0 / 0
List<int> в двумерный массив
    #38471627
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
List<int> в двумерный массив
    #38471628
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Qwe.Qwe1, [][] это так называемый невыровненный (jagged) массив. У него вторая размерность может быть разной для каждой "строки". Подробнее смотри в MSDN - Jagged Arrays .
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / List<int> в двумерный массив
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]