首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

数组赋值有关问题

2012-02-14 
数组赋值问题temp2是temp1经过变换得到的数组,在temp2给fd赋值的时候怎么赋不了值呢?显示fd为null,另外在f

数组赋值问题
temp2是temp1经过变换得到的数组,在temp2给fd赋值的时候怎么赋不了值呢?

显示fd为null,另外在fd初始化时,debug那一步总是跳过fd,请问怎么回事??多谢了
for   (int   i   =   0;   i   <   w;   i++)   {

          for   (int   j   =   0;   j   <   h;   j++)   {
temp1[j]   =   td[i   *   h   +   j];
          }
            for   (int   j   =   0;   j   <   h;   j++)   {
fd[i   *   h   +   j]   =   temp2[j];
          }

  }

[解决办法]
看看fd申请空间了没.
int[]fd = new int[size];//size根据你的程序而定
如果源码不太长,可以把源码全帖出来,这样更方便别人帮你查问题



[解决办法]
比较一下两个地方
fd[i * w + j] = new Complex();//初始化 第一个地方


for (int i = 0; i < w; i++) {

for (int j = 0; j < h; j++) {
temp1[j] = td[i * h + j]; //第二个地方
}

可以看出
i * h + j < i * w + j
说明td[i * h + j];没有被初始化过,还是null了
所以
for (int j = 0; j < h; j++) {
fd[i * h + j] = temp2[j]; //这里就出错了


热点排行