草庐IT

Operators

全部标签

c# - == 与 C# 中的等于

C#中==和Equals的计算有什么区别?例如,if(x==x++)//Alwaysreturnstrue但是if(x.Equals(x++))//Alwaysreturnsfalse编辑:intx=0;inty=0;if(x.Equals(y++))//ReturnsTrue 最佳答案 根据规范,这是预期的行为。第一个的行为受规范第7.3节的约束:Operandsinanexpressionareevaluatedfromlefttoright.Forexample,inF(i)+G(i++)*H(i),methodFiscall

c# - 我们什么时候必须在 C# 中使用 checked 运算符?

在C#中什么时候必须使用checked运算符?是不是只适合异常处理? 最佳答案 您可以使用checked来防止表达式中的(静默的)溢出。当您知道可能会发生无害溢出时,请使用unchecked。您可以在不想依赖默认(项目范围)编译器设置的地方同时使用两者。这两种形式都很少见,但在进行关键整数运算时,值得考虑可能的溢出。另请注意,它们有两种形式:x=unchecked(x+1);//(expression)unchecked{x=x+1;}//{statement(s)} 关于c#-我们什么

c# - C# 中的 true 和 false 运算符是什么?

C#中true和false运算符的目的和作用是什么?officialdocumentation这些是无法解释的。 最佳答案 如果您正在定义一个专门的bool值,您将重载true或false运算符。这通常不是必需的,但是,这就是为什么它们似乎没有用。例如,在模糊逻辑bool类中,您可能有这样的东西://Representsabooleanthatcanstoretruthvaluesinarangefrom[0,1],with//avalueofoneindicatingcompletemetaphysicalcertitudeand

c# - 是什么?在 C# 中是什么意思?

这个问题在这里已经有了答案:Whatdoesquestionmarkanddotoperator?.meaninC#6.0?(3个答案)关闭7年前。在项目Roslyn中,文件src\Compilers\CSharp\Portable\Syntax\CSharpSyntaxTree.cs在446行有:using(varparser=newInternalSyntax.LanguageParser(lexer,oldTree?.GetRoot(),changes))那里的是什么??它是否检查oldTree是否为null,如果不是,则运行GetRoot方法,如果不是,则返回什么?这是我的第一

c# - 使用三元运算符进行多项操作

如何使用三元?:执行多个操作的条件,如果表达式为真/假?wbsource=(exp)?(做一件事):(做第二件事)wbsource=(exp)?(做一件事)(做第二件事):(做第二件事)例如:为什么我不能在之间执行三个操作?和:filename=(fp!=null)?fp;Properties.Settings.Default.filename=fp;Properties.Settings.Default.Save;:Properties.Settings.Default.file;对于简单的if条件,我会以如下简单的方式编写:if(fp!null){filename=fp;Prope

c# - .Trim() 当字符串为空或 null 时

我正在以json的形式从客户端接收一些数据。我正在写这个:stringTheText;//orwhoulditbebetterstringTheText="";?TheText=((serializer.ConvertToType(dictionary["TheText"])).Trim());如果从json解析的变量返回为空,当我调用.Trim()方法时这段代码会崩溃吗?谢谢。 最佳答案 您可以使用elvis运算符,也称为“空条件运算符”:GetNullableString()?.Trim();//returnsNULLortri

c# - C# 中的 IS NOT 运算符

我在C#中找不到“不是”运算符。例如,我有下面的代码不起作用。我需要检查err是否属于ThreadAbortException类。catch(Exceptionerr){if(errisnotThreadAbortException){}} 最佳答案 在这种情况下,包装并检查相反的bool值:if(!(errisThreadAbortException)) 关于c#-C#中的ISNOT运算符,我们在StackOverflow上找到一个类似的问题: https:

c# - 如果左操作数为??运算符不为空,正确的操作数是否被评估?

我正在考虑在C#中使用??运算符(空合并运算符)。但是documentation在MSDN上的访问量有限。我的问题:如果左边的操作数不为空,右边的操作数会被计算吗? 最佳答案 一如既往,C#规范是此类事情的最佳去处。来自C#5specification的第7.13节(强调我的):Anullcoalescingexpressionoftheforma??brequiresatobeofanullabletypeorreferencetype.Ifaisnon-null,theresultofa??bisa;otherwise,ther

javascript:什么是 NOT NOT? (!! 运算符(operator) )

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:Whatisthe!!operatorinJavaScript?什么是notnotinjavascript我已经看过几次了:)functionfoo(){return!!(window.history);}

javascript - JQuery/Javascript 和 && 运算符的使用

我试图让一个简单的条件语句起作用,但遇到了问题。失败的代码:$(document).ready(function(){varwwidth=$(window).width();if(wwidth321)&&(wwidth如果我删除代码的elseif部分,我会收到警报。如果我尝试使用&&或||运营商它会失败。我用谷歌搜索过,我找不到它不起作用的原因。我也试过:((wwidth>321&&wwidth以及其他方式,以防出现一些奇怪的语法问题。如有任何帮助,我们将不胜感激。谢谢:) 最佳答案 ((wwidth>321)&&(wwidth这就