我正在学习C#并尝试过这个问题。请看下面问题下面的两次尝试,有人可以指出我在哪里/怎么出错了吗?感谢。
尝试1:
如果第一个布尔值为true且第二个布尔值为false,则返回true。
public static bool ReturnTrueAndFalse(bool boolean1, bool boolean2)
{
if (boolean1 = true && (boolean2 = false))
{
return true;
}
return false;
}
尝试2:
public static bool ReturnTrueAndFalse(bool boolean1, bool boolean2)
{
boolean1 = true;
boolean2 = false;
return boolean1 && boolean2;
}
答案 0 :(得分:5)
单个=
设置变量。
你需要使用双倍。
另外,你可以稍微改写一下。
public static bool ReturnTrueAndFalse(bool boolean1, bool boolean2)
{
return boolean1 && !boolean2;
}
如果你想保留它,就像这样:
public static bool ReturnTrueAndFalse(bool boolean1, bool boolean2)
{
if (boolean1 == true && boolean2 == false)
{
return true;
}
return false;
}
}
答案 1 :(得分:1)
这是您在下面的尝试。在检查boolean1是否为true时,你说'boolean1设置为true'你不检查它是否为真,对于boolean2是相同的。
public static bool ReturnTrueAndFalse(bool boolean1, bool boolean2)
{
if (boolean1 = true && (boolean2 = false))
{
return true;
}
return false;
}
我已修复您的代码,这将有效。
public static bool ReturnTrueAndFalse(bool boolean1, bool boolean2)
{
if (boolean1 == true && boolean2 == false)
{
return true;
}
return false;
}
在if条件中,您需要添加'=='而不是'=',以检查它是否与您要检查的值相等。