我正在尝试在C#中创建一个for循环来对3个bool变量进行所有可能的测试,但如果( a && b ) || c
我无法弄明白如何做a
行。 }是True,b
和c
为False,整个语句都等于false。
答案 0 :(得分:3)
不确定这是否是你想要的,但是对于嵌套的foreach
,你可以这样做:
foreach (var a in new[] { false, true, })
foreach (var b in new[] { false, true, })
foreach (var c in new[] { false, true, })
{
// use a, b, and c here
}
或者以评论首选的风格:
bool[] arr = { false, true, };
foreach (var a in arr)
foreach (var b in arr)
foreach (var c in arr)
{
// use a, b, and c here
}
答案 1 :(得分:1)
此版本允许一些灵活性扩展:
for (int i = 0; i < 8; i++)
{
bool a = (i & 1) != 0;
bool b = (i & 2) != 0;
bool c = (i & 4) != 0;
Console.WriteLine("a={0},b={1},c={2}", a, b, c);
}