' '字符做这个操作
本文关键字:操作 字符 | 更新日期: 2023-09-27 18:12:18
我刚刚阅读了一些朋友的代码,并为它编写了一个测试工具,我遇到了一些困扰我的东西:
Console.WriteLine(inputString + (isPalindrome(inputString) ? displayConditions(" some text 1",
ConsoleColor.Black) : displayConditions("some text 2", ConsoleColor.White)));
'?符号在这个操作中做什么?
如果能给我一个大致的描述,我将不胜感激。我似乎在网上找不到答案,也找不到我的书。
这将是一个三元操作符。
x ? y : z
应读作
if ( x )
y;
else
z;
称为条件运算符
这是一种简洁的编写条件的方式,您需要根据比较的结果赋值
实际意思是
result = (evaluate a condition) ? (expression to return if the condition is true) :
(expression to return if the condition is false)
这是条件运算符
通常也被称为"三元操作符",但这只意味着具有三个操作数的操作符。这并没有说明操作符的作用,但它是c#中唯一一个有三个操作数的操作符。
三元运算符
到?:操作符的microsoft链接
基本上是内联if语句
这是一个三元运算符。它用于替换包含if {} else {}
的语句。
例如,我们不应该这样做:
bool value = false;
string myString;
if (value){
myString = "something";
else{
myString = "something else";
}
你可以这样做:
string myString = (value) ? "something" : "something else";
如果?
之前的条件为真,则求:
之前的表达式,否则求:
之后的表达式。
也可用于返回:
return (myCondition) ? "yes" : "no";