二维数组必须提前定义好大小,并且定义之后不能更改。一开始用二维数组存储一些坐标,但坐标数是不定的,所以每次用这个数组的时候都要去除空白,而去除空白只能用新建二维数组来实现。
二维数组无法按行或列截取数据,只能用循环一个个元素读取。
List当一维数组很方便,有很多强大的方法使用,但是作为List<List<T>>这样的二维数组使用的时候,就只能拆分开来使用。赋值的时候要特别注意,别用同一个List<T>给行赋值,要不然所有行数据都一样。List是引用类型,传递的是引用地址,所以二维List赋值时要用不同的List<T>。
二维数组给二维List 赋值应该用下面这样的方式:
double[,] ROIs = new double[200,4] ;
List< List<double>> roiList=new List<List<double>>();
for (int ii = 0; ii <ROIs.Length/ 4; ii++)
{
//这个定义不能放在for循环外,要不然数据都会变成最后一行
List<double> arrlist = new List<double>();
for (int i = 0; i < 4; i++)
{
if (ROIs[ii, 0] !&