Tom*_*len 5 c# asp.net boolean-logic
// Example bool is true
bool t = true;
// Convert bool to int
int i = t ? 1 : 0;
Console.WriteLine(i); // 1
Run Code Online (Sandbox Code Playgroud)
这会将false转换为0并将true转换为1,有人可以向我解释这是怎么回事?1:0有效吗?
jos*_*ley 12
看看三元运算符.
int i = t ? 1 : 0;
Run Code Online (Sandbox Code Playgroud)
等同于:
if(t)
{
i = 1;
}
else
{
i = 0;
}
Run Code Online (Sandbox Code Playgroud)
这种语法可以在各种语言中找到,甚至是javascript.
如果你将冒号替换为"否则",可以把它想象成英语句子:
bool isItRaining = false;
int layersOfClothing = isItRaining? 2 otherwise 1;
Run Code Online (Sandbox Code Playgroud)