我搜索了网页,但没有找到正确的答案,下面的代码约定(特别是C#)是什么意思?下面的约定是什么意思:bool isRight =(direction ==“right”)
bool isRight = (direction == "right")
这是什么意思,当你有“=”,然后另外两个“==”?我知道这是编写一些操作的捷径。 感谢
我搜索了网页,但没有找到正确的答案,下面的代码约定(特别是C#)是什么意思?下面的约定是什么意思:bool isRight =(direction ==“right”)
bool isRight = (direction == "right")
这是什么意思,当你有“=”,然后另外两个“==”?我知道这是编写一些操作的捷径。 感谢
这是
bool isRight = false;
if (direction == "right")
{
isRight = true; // Change value
}
(direction == "right")
简单地返回指示条件是否为真或假的布尔值,然后只需您正在使用的返回值,并使用=
运营商将其分配给一个布尔变量。
结论 -
==
对于平等检查
=
对于分配
的=
称为assignment operator。它用于从表达式的右侧向左侧分配一个值。
==
被称为equality operator。它用于在运营商的任一侧共享物体
当您有“=”和另外两个“==”时,这意味着什么?
括号实际上是没有必要的,但它们封装变量direction
以字符串"right"
比较的结果。该比较的返回值(实际上是所有比较)的类型为bool
。该返回值使用=
赋值运算符分配给变量isRight
。
请检查文档operators。
括号内的位(direction == "right")
评估为布尔表达式。这意味着这部分是在它自己的权限下分析的,并导致True/False结果。
==
运算符检查左侧和右侧之间的相等性,所以如果direction
变量的值等于"right"
那么该值将为真。
=
运算符用于赋值,前一个布尔值被分配给isRight
变量。
速记其实它真的很简单:
的bool isRight
为真时,direction
正是(==
)类似"right"
。
如果不是,则为bool isRight = false
。
左边的'='是赋值运算符到'bool',右边的'=='是2个字符串值之间的比较运算符。阅读关于值赋值和比较的C#语言规范。 –
这是比较结果的简单分配。 – Filburt
@TetsuyaYamamoto - 我不确定什么,具体来说,OP实际上是在这里。但如果他们被赋值和比较弄糊涂了,我怀疑C#语言规范是他们需要去清除混淆的地方。 –