C#码农笔记:从第一行代码到项目实战
上QQ阅读APP看书,第一时间看更新

2.6 运算符

运算符的作用是让代码表达式完成特定的运算功能,这和数学中的运算法则差不多,简单的如加、减、乘、除,复杂的有按位运算等。

要使运算符能够发挥作用,还需要操作数的参与,例如1 + 1的运算结果是2。其中,“+”是运算符,负责加法运算,而两个1就是操作数,如果只有运算符而没有操作数参与,那么这个运算就没有意义了。

再比如,5 + 6 * 2,读者也可以轻易地知道它的运算结果是17,其中“+”负责加法运算,“*”负责乘法运算,参与运算的操作数是5、6和2。

不过,程序中的运算符远比数学中的运算符要复杂得多,而且运算的方式也有所扩展。在程序中,有三类运算符。

第一类是一元运算符,即只有一个操作数。这个理解起来也不难,比如+6,根据数学知识也能明白它指的是正整数6,再如-75就是负整数75。

第二类是二元运算符,也就是有两个操作数参与运算的运算符,如10-5。

第三类是三元运算符(也叫三目运算符),它的使用方法如下:

    <判断条件> ? <条件为真时的表达式> : <条件为假时的表达式>

这是一个带有条件判断的运算符,如

    int a = 20;
    string str = a > 10 ? "a的值大于10" : "a的值小于或等于10";
    Console.WriteLine(str);

在上面代码中,首先声明了一个整型的变量a,初始化为20。接着声明一个string类型(字符串)的变量str,而它的值由a的值来决定。如果a的值大于10,则str初始化为“a的值大于10”;如果a的值小于或等于10,则str初始化为“a的值小于或等于10”。因为a的值已初始化为20,是大于10的,所以str应被初始化为“a的值大于10”。

为了让读者能够更好地理解运算符,下面介绍四个示例。