c# - C# 线性函数,带有 null 的小数数组
问题描述
如何在C#中写一个线性函数,它来自数据库表的字段values = decimal(10,2) null
例如
{10,00; null; null; null; null; null; null; null; 12.00}
我会得到:
{10; 10.25; 10.50; 10.75; 11.00; 11.25; 11.50; 11.75; 12,00}.
数组的大小和“null”元素的数量是未知的。
只有第一个和最后一个元素是已知的。在此示例中,为 10,00 和 12,00。
解决方案
您可以遍历数组并每次添加步骤:
var array = new double?[]{10.00, null, null, null, null, null, null, null, 12.00};
var step = (array.Last() - array.First()) / (array.Length - 1);
for (var i = 1; i < array.Length - 1; i++)
{
array[i] = array[i - 1] + step;
}
此外,您可以像这样使用 Linq:
var result = array.Select((x, i) => array[0] + step * i);
推荐阅读
- flutter - TabBarView 导致 FutureBuilder 的内容消失
- youtube-api - 通过 IP 地址或密钥限制 YouTube 配额?
- django - 我如何从模板中收集 imgaes 并将其保存到 django 中的数据库
- prolog - 如何使用 call_with_depth_limit/3
- tcp - 即使窗口仍然打开,TCP 客户端也会停止发送
- acl - 除非指定所有用户,否则 Mosquitto ACL 无法定义用户特定规范
- android - API 调用期间的 Android 屏幕旋转会产生 kotlinx.coroutines.JobCancellationException
- python - 我是不是打错了什么,因为它不断出现 - 未定义的变量'__main__'
- python - Python Selenium ChromeDriver 错误。消息:元素不可交互
- python-3.x - 将python二进制文件转换为pem格式