我得到一个已知大小的矩阵(来自file.txt)到相同大小的2D数组。这段代码很好。
但是现在我真的在寻求扩展这个,比如将一个未知大小的矩阵变成2D数组,即使用动态大小的2D数组。
这是我正在修改的C#代码。
int[,] matrix = new int[3,3];
int i = 0, j = 0, k = 0;
#region Reading Matrices From Files
// Matrix 1 Manipulation...............
// Read the file as one string.
string text = System.IO.File.ReadAllText("file.txt");
//reads all the text of file of given path in a string
foreach (var row in text.Split('\n'))
{
//outter foreach loop is for setting number of rows equal to number lines by splittin over \n
j = 0;
foreach (var col in row.Trim().Split(' '))
{
//inner foreach loop is for setting number of columns equal to number chracters by splittin over space
matrix[i, j] = int.Parse(col.Trim());
j++;
}
i++;
}
感谢任何帮助......
答案 0 :(得分:2)
数组是固定大小的数据结构。它用于多种语言。不幸的是,一旦创建,您可能无法修改其内容。
也就是说,Lists如何调整大小?
列表实际上是使用数组实现的。因此,最初列表包含固定数量的对象。如果要添加超过此容量的对象,我们会将当前数组复制到更大的数组中,从而动态增加容量。
使用这个想法,我们实际上可以创建自动从数组调整大小的矩阵类,而不是List。
我希望上面让你思考如何从数组创建矩阵!如果没有,这里有更多提示: