【发布时间】:2019-09-18 22:42:09
【问题描述】:
我有一个单一的数据列表,例如
List 0 index Contains : BlockId = 438001,DistrictId = 438,TownId = 0,UserId = 1077
UserTypeId = 4,VillageId = 238047,ZoneId = 1018
List 1 index contains : BlockId = 438001,DistrictId = 438,TownId = 0,UserId = 1077,UserTypeId = 4,VillageId = 238048,ZoneId = 1018
List 2 index contains : BlockId = 438002,DistrictId = 438,TownId = 0,UserId = 1077,UserTypeId = 4,VillageId = 238138,ZoneId = 1018
现在我想根据这个创建一个多维数组
public List<int>[][] arrayList{get;set;}
我需要将列表数据转换为多维数组列表,如
[0]
[0] -> Count 1 -> 438001 --> Showing blockId
[1]-> Count 3 -> 238047,238048 --> showing villageId
[1]
[0]->count 1 -> 438002
[1]->count 2 -> 238138
[2]->count 3-> 0 --> showing townId
var data = user.getUserRolebyUserId(userId);
var blkList = data.GroupBy(x => x.BlockId);
List<int>[][] lst;
foreach (var item in data.GroupBy(x => x.BlockId))
{
List<int>[][] array = [item.Key,item.Select(x => x.VillageId).ToList(), item.Select(q => q.TownId)];
}
我正在尝试应用它,但它向我显示了无效表达式的错误。 那么如何将列表转换为多维数组呢?
【问题讨论】:
-
List<int>[][]这不是 多维数组,它是List<int>的锯齿状数组 -
除了 TheGeneral 所说的,
... = [something, something, something];甚至不是有效的 C# 语法。我想这可能表明需要花更多时间学习 C# 教程,涵盖如何创建、初始化和使用数组和集合的基础知识...... -
我正在尝试
List<int>[][] array = new int[][] {item.Key, item1.VillageId, item1.TownId };,但它也没有转换它。 -
您声明了一个
List<int>[][]类型的变量,然后尝试创建并分配一个int[][]实例给它。 (int[][]甚至与List<int>[][]完全不同,也不能转换为List<int>[][])什么?这没有一点意义...... -
@elgonzo,如何将简单的 int[][] 添加到 List
[][] ?
标签: c# list arraylist multidimensional-array