gpt4 book ai didi

c# - 填充复数数组错误

转载 作者:行者123 更新时间:2023-12-02 17:34:44 24 4
gpt4 key购买 nike

我有两个数组。一个包含“实”值,另一个包含“虚”值。这两个数组需要组合成一个复数数组。我尝试了以下方法:

Complex[] complexArray = new Complex[16384];

for (int i = 0; i <16384; i++)
(
complexArray[i].Real = realArray[i];
complexArray[i].Imaginary = imaginaryArray[i];
}

这是行不通的。它给出错误:无法将属性或索引器“System.Numerics.Complex.Real”分配给 - 它是只读的我知道复数是不可变的,但如何创建这样的数组?

更重要的是,一旦我有了这个数组,我想在其中移动值。

最佳答案

只需使用 Complex 的构造函数:

Complex[] complexArray = new Complex[16384];
for (int i = 0; i < complexArray.Length; i++)
(
complexArray[i] = new Complex(realArray[i], imaginaryArray[i]);
}

然后,您可以选择使用 LINQ 减少代码量(轻微的性能成本):

var complexArray = realArray.Zip(imaginaryArray, (a, b) => new Complex(a, b)).ToArray();

要移动数组中的值,就好像值是 intdouble 一样:

int i = 5;
int j = 7;
// Swap positions i and j
var temp = complex[i];
complex[i] = complex[j];
complex[j] = temp;

关于c# - 填充复数数组错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28181018/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com