前言
今天和大家一起学习下C#中的表达式和运算符,都是很基础的知识点。
在日常的编码过程中,对于表达式和运算符我们每天都在使用。比如像下面的代码
int age=27;
就是一种表达式。
运算符是一个符号,它表示返回单个结果的操作。操作数是指作为运算符输入的数据元素。一个运算符会将操作数作为输入,执行某个操作,基于该操作返回一个值。
表达式是运算符和操作数的字符串,可以作为操作数的结构有字面量、常量、变量、方法调用、元素访问器、其他表达式等。其中表达式可以使用运算符连接以创建其他表达式。
字面量是代码中的数字或字符串,表示一个指定类型的明确的,固定的值。
int age=27;
age=28;
Console.WriteLine(age);
Console.WriteLine(90);
上面的具体数字和字符串就是所谓的字面量,比如90,27,28都是。这里需要注意,字面量必须在编译时可知。
Bool有两个字面量:true和false。引用类型变量字面量null表示变量没有设置为内存中的数据。
求值顺序
表达式可以由许多嵌套的子表达式构成,子表达式的求值顺序可以使表达式的最终值发生差别。
- 优先级
- 结合性
简单算术运算符
简单算术运算符执行四则算术运算,比如下面的这些是二元左结合运算符。
- 加 +
- 减 -
- 乘 *
- 除 / 截取整数部分到最近的整数。
求余运算符
求余运算符(%)用第二个操作数除第一个操作数,忽略掉商并返回余数。
int a=30%7;
关系比较运算符和相等运算符关系比较运算符和相等运算符是二元运算符,比较它们的操作数并返回bool型值。
if(1!=2){
}
if(1<5){
}
带有关系或相等运算符的二元表达式返回bool类型的值。
对于大多数引用类型来说,比较它们的相等性时,将只比较它们的引用。