if (love = true)其中的“=”用一个或两个都可以运行、怎么回事
来源:百度知道 编辑:UC知道 时间:2024/06/28 17:12:55
应该是“=”是赋值、“==”表示是相等、那if里边应该是用“==”吧、
那为什么“=”也可以运行程序那?!
顺便补充一句我是菜鸟、别见笑 囧
bool love = true;
if (love = true)
{
Console.WriteLine("我爱你!");
}
else
{
Console.WriteLine("我不爱你!");
}
Console.ReadLine();
那为什么“=”也可以运行程序那?!
顺便补充一句我是菜鸟、别见笑 囧
bool love = true;
if (love = true)
{
Console.WriteLine("我爱你!");
}
else
{
Console.WriteLine("我不爱你!");
}
Console.ReadLine();
通常布尔值不需要等于号的,如果为真就是“if(bool)”,反则为假就是“if(!bool)”,几乎所有的语言或者脚本都适用,有条理的写法最好这样做:
bool love=flase,string str;
if(love)
{
str="我爱你!";
}
else
{
str="我不爱你!";
}
Console.WriteLine(str);
Console.ReadLine();
love = true是个赋值表达式
所以love = true的表达式结果是个bool值 是可以使用的
一般在使用bool结果的赋值表达式的时候通常不建议直接在条件内写
而使用bool变量时建议不使用和true false比较来判断而直接使用变量的值
即if(love)
{
}
if(love=true)
做的应该是先把love赋为true,然后判断复制是否成功,成功则执行Console.WriteLine("我爱你!"); ,反之则Console.WriteLine("我不爱你!");
love==ture 是个布尔表达式,判断love的值是否为true,
赋值也是true
相等也是true
所以都是 if(true)
效果一样嘛
(love = true)就是 赋值为true了
所以就这样只会显示 我爱你,不管你上边 定义为 true or false 结果都不会变