gpt4 book ai didi

c# - 数据表中的复数

转载 作者:行者123 更新时间:2023-11-30 22:51:30 28 4
gpt4 key购买 nike

我将复数(实数、虚数)添加到数据表中,然后需要进行一些数学计算。

假设:

DataTable dtB_01 = new DataTable();
dtB_01.Columns.Add("d1");
dtB_01.Columns.Add("d2");
dtB_01.Columns.Add("d3");
dtB_01.Columns.Add("d4");

DataRow bRow;
bRow = dtB_01.NewRow();
dtB_01.Rows.Add(bRow);
bRow["d1"] = new Complex(double.Parse("6"), double.Parse("2"));
bRow["d2"] = new Complex(double.Parse("8"), double.Parse("3"));
bRow["d3"] = Complex.Subtract((Complex)bRow["d1"], (Complex)bRow["d2"]);
bRow["d4"] = Complex.Add((Complex)bRow["d1"], (Complex)bRow["d2"]);

但是它不起作用,有什么建议吗?以下 2 行不起作用

bRow["d3"] = Complex.Subtract((Complex)bRow["d1"], (Complex)bRow["d2"]);
bRow["d4"] = Complex.Add((Complex)bRow["d1"], (Complex)bRow["d2"]);

而我的数据是一千多行,bRow["d3"] 实际上是在使用来自不同行的数据。

最佳答案

DataTable 不是 .Net 中的通用集合。它专门用于在内存中存储数据库数据。

所以它只支持数据库系统中常用的类型,而 Complex 不是其中之一。参见 https://learn.microsoft.com/en-us/dotnet/api/system.data.datacolumn.datatype?view=netframework-4.8#System_Data_DataColumn_DataType

您可以简单地使用元组列表,如下所示:

var tdB_01 = new List<(Complex d1, Complex d2, Complex d3, Complex d4)>();
var d1 = new Complex(6, 2);
var d2 = new Complex(8, 3);
var d3 = d2 - d1;
var d4 = d1 + d2;
tdB_01.Add((d1, d2, d3, d4));

关于c# - 数据表中的复数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59097835/

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