如何获取列表行和列值

时间:2016-09-22 18:30:02

标签: c#

所以我目前正在尝试将一些旧的C ++代码转换为C#用于练习目的,在我的C ++中我有以下几行代码:

Matrix::Matrix(const i_list & list)
{

    numCol = (*(list.begin())).size();
    numRow = list.size();
    /...More Code
}

i_list的类型定义如下:typedef initializer_list<initializer_list<double>> i_list;

我们可以看到它是一个2D列表,在我的C#代码中我做了类似的事情,但是我在构造函数的参数中定义了列表签名,因为根据我的理解,C#缺少typedef,如下所示:

MatrixLogic(ref List<List<Object>> matrixList)
        {

        }

但是我对于如何正确获取matrixList的列数和行数感到很遗憾。输入的格式如下:myEntry = {{1,2},{3,4},{5,6}}或其中的一些变体。

1 个答案:

答案 0 :(得分:0)

嗯,对于一个,List<List<double>>不像<{1}}那样必然方形。 C#中最接近的内置结构是Matrix

那就是说,如果你假设外部列表的所有元素都是相同的大小,那么&#34;外部&#34;的长度。维度将是

double[,]

您可以查看第一个项目的大小以获得&#34;内部&#34;长度:

matrixList.Count