private bool[] if_checkbox_enabled()
{
bool[] rst = new bool[5];
rst[0] = (bool)a.IsChecked;
rst[1] = (bool)b.IsChecked;
rst[2] = (bool)c.IsChecked;
rst[3] = (bool)d.IsChecked;
rst[4] = (bool)e.IsChecked;
return rst;
}
正确的案例:
bool[] result = { false, false, false, false, false };
if (if_checkbox_enabled() == result)//no problem
{...}
错误的情况:
if (if_checkbox_enabled() == { false, false, false, false, false })//reports error
{...}
为什么我不能直接使用bool类型数组作为判断语句?谢谢!
答案 0 :(得分:0)
你的第一个例子也是错误的。你不能像那样比较阵列。您可以按每个元素简单循环比较它们,也可以使用SequenceEqual
;
bool[] result = { false, false, false, false, false };
if (if_checkbox_enabled().SequenceEqual(result))
{
//Do something
}
或
if (if_checkbox_enabled().SequenceEqual(new bool[]{ false, false, false, false, false }))
{
}