一个2维数组中的一列想保存一个函数的返回怎么写
一个2维数组中的一列想保存一个函数的返回如何写?
一个函数
private int[] f(int i)
{
//......
}
我的数组定义
int[,] b;
现在我让b实现类似下面的赋值
p= ... ; //p在程序中会生成,每次不一样...
for(int i=0; i<p;i++)
{
b[i,]=f(i); //这句话怎么写,让数组b的第一维是i,第二维是一个 int[] 型的返回
}
即如果i=0; f(i)={1,3,5,7,9}
那么b[0,0]=1; b[0,1]=3 ... ...
谢谢!!!!
------解决方案--------------------
一个函数
private int[] f(int i)
{
//......
}
我的数组定义
int[,] b;
现在我让b实现类似下面的赋值
p= ... ; //p在程序中会生成,每次不一样...
for(int i=0; i<p;i++)
{
b[i,]=f(i); //这句话怎么写,让数组b的第一维是i,第二维是一个 int[] 型的返回
}
即如果i=0; f(i)={1,3,5,7,9}
那么b[0,0]=1; b[0,1]=3 ... ...
谢谢!!!!
------解决方案--------------------
- C# code
for(int i=0;i<p;i++) { for(int j=0;j<f(i).Length;j++) { b[i,j]=f(i)[j]; } }
------解决方案--------------------
这还不简单。
int p = 10; //假设10个
int[] f = new int[]{1,2,3,4,5,6,7,8,9,0};
int[,] b = new int[2,100];
for (int i = 0; i < p; i++)
{
for(int j= 0;j<2;j++)
{
b[j,i] = f[i];
}
}
测试通过,呵呵。
------解决方案--------------------
二维数字只能是每个行的列数是相等的,建议使用锯齿行数组,int[][],这样每一行的列数可以是不相同的
------解决方案--------------------
我还是不太明白楼主的意思,请楼主写的详细一点,以免耽误解决问题。
如果数组不固定,那建议你用ARRAYLIST,因为不初始化使用在c#里面是要出错的。