0

我有一个执行长时间处理的程序。第一步是将表格从 XML 格式转换为二维数组 (arr[,])。之后执行了许多步骤,并且只有在它们之后我才知道表格是否具有行标题或列标题。为了清楚起见,行标题表示如下表:

Name    city   id
Anna     NY     1
Joe      NJ     2

列标题的意思:

Name    Anna     Joe
City    NY       NJ
id      1        2

该表根据标题进行处理。我接受与某些标题相关的价值观并致力于它们。我正在寻找一种以一种方式表示表格的方法,因此我不应该每次都检查表格类型是行还是列。我想避免类似以下代码的事情:

List<Cell> cells;
if (tableType == rows)
  cells = table.getCol("Name");
else
  cells = table.getRow("Name")

我很乐意接受任何建议。

谢谢!

4

2 回答 2

0

有一个被调用的方法,而不是table.getCol然后table.getRow调用它们。

就像是:

static bool IsColumns = true;
List<Cell> Get(string input)
{
    if (IsColumns) return table.getCol(input);
    else return table.getRow(input);
}
于 2012-07-24T12:37:17.353 回答
0

有一些不错的代码取自这个问题

int[,] array = new int[4,4] {
    { 1,2,3,4 },
    { 5,6,7,8 },
    { 9,0,1,2 },
    { 3,4,5,6 }
};

int[,] rotated = RotateMatrix(array, 4);

static int[,] RotateMatrix(int[,] matrix, int n) {
    int[,] ret = new int[n, n];

    for (int i = 0; i < n; ++i) {
        for (int j = 0; j < n; ++j) {
             ret[i, j] = matrix[j, i];
        }
    }

    return ret;
}
于 2012-07-24T12:33:57.540 回答