C# 检查双c的空元素数组#
我正在寻找一个代码来检查double数组中的元素是否为空。我试过使用C# 检查双c的空元素数组#,c#,arrays,double,element,C#,Arrays,Double,Element,我正在寻找一个代码来检查double数组中的元素是否为空。我试过使用isNaN,string.isNullOrEmpty和0.0D但是没什么可做的,我仍然有这个文本:不是数字 那么,您知道C#中的任何代码能够检查double数组中的元素是否为空吗 这是我的密码: if (!Double.IsNaN(d1.getChiffreAffaireBase()[keyIndex1])) { textBox43.Text = calcMargeCa(d1.getChiffreAffaireBase(
isNaN
,string.isNullOrEmpty
和0.0D
但是没什么可做的,我仍然有这个文本:不是数字
那么,您知道C#中的任何代码能够检查double数组中的元素是否为空吗
这是我的密码:
if (!Double.IsNaN(d1.getChiffreAffaireBase()[keyIndex1]))
{
textBox43.Text = calcMargeCa(d1.getChiffreAffaireBase()[keyIndex1], d1.getChiffreAffairePlus()[keyIndex1]).ToString("0.00");
textBox44.Text = calcMargeCa(d1.getChiffreAffaireBase()[keyIndex1+1], d1.getChiffreAffairePlus()[keyIndex1+1]).ToString("0.00");
}
else
{
label13.Hide();
textBox43.Hide();
textBox44.Hide();
}
不能没有值(也就是说,它们不能是null
),但如果要指示它没有值,可以使用(或简称double?
)将其设置为null
。下面是一个例子:
double?[] array = new double?[12];
然后,为了检查它是否有值,请将其与null
进行比较:
if (array[6] == null){
// do your thing
}
编辑:
离题了,但现在您已经发布了代码,我看到您正在使用
double
表示货币(Chiffre d'Affaire或Revenue),虽然这可能有效,但如果您声明这样的数组,您应该
double[] array = new double[12]; // elements cannot be null
所有元素都将设置为0
如果确实需要,请将其声明为可为空
var array = new double?[12]; // elements can be null
var isEmpty = (array[6] == null);
或
Double.IsNaN不检查空值,请检查此项了解更多信息或阅读相关文档
相反,您可以使用
double?[]数组=新的double?[12]
哪个值可以为空,然后可以检查某个数组值是否等于空空是什么意思double
是一个ValueType,它不能为“空”。发布您的代码后,我们将更好地了解您试图执行的操作。我有double[]数组=新的double[12],我想检查数组[6]是否没有值。它将始终有一个值,因为正如@FrédéricHamidi所说,值类型总是有值。@Abdellahumghar这总是true
,因为double
是一种永远不能为null
的值类型。
var isEmpty = !array[6].HasValue;