c#基础 运算符介绍(二)

本文详细介绍了C#中的运算符,包括关系运算符、赋值运算符、常用杂项运算符如sizeof()和typeof(),以及三元运算符和as类型转换的用法。此外,还讨论了事件参数sender和e在处理事件时的角色。

目录

关系运算符

1.1注意

赋值运算符

2.1什么是赋值运算符

2.2常见赋值运算符

杂项运算符

3.1常用杂项运算符

3.2三元运算符

3.3 as类型转换

事件的参数

4.1 sender参数

4.2 e参数

运算符优先级


关系运算符

两个数据之间的关系运算

下表显示了 C# 支持的所有关系运算符。假设变量 A 的值为 10,变量 B 的值为 20,则:

运算符描述实例
==检查两个操作数的值是否相等,如果相等则条件为真。(A == B) 不为真。
!=检查两个操作数的值是否相等,如果不相等则条件为真。(A != B) 为真。
>检查左操作数的值是否大于右操作数的值,如果是则条件为真。(A > B) 不为真。
<检查左操作数的值是否小于右操作数的值,如果是则条件为真。(A < B) 为真。
>=检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真。(A >= B) 不为真。
<=检查左操作数的值是否小于或等于右操作数的值,如果是则条件为真。(A <= B) 为真。

1.1注意

  1. 和属性赋值一样,需要处理关系的这两个数据之间必须保持类型最终一致

  2. 关系运算符运算的最终结果值只有两个:true、false

赋值运算符

2.1什么是赋值运算符

在给等号左边数据赋值的时候,先考虑是否要进行运算赋值

2.2常见赋值运算符

运算符描述实例
=简单的赋值运算符,把右边操作数的值赋给左边操作数C = A + B 将把 A + B 的值赋给 C
+=加且赋值运算符,把右边操作数加上左边操作数的结果赋值给左边操 作数C += A 相当于 C = C + A
-=减且赋值运算符,把左边操作数减去右边操作数的结果赋值给左边操 作数C -= A 相当于 C = C - A
*=乘且赋值运算符,把右边操作数乘以左边操作数的结果赋值给左边操 作数C *= A 相当于 C = C * A
/=除且赋值运算符,把左边操作数除以右边操作数的结果赋值给左边操 作数C /= A 相当于 C = C / A
%=求模且赋值运算符,求两个操作数的模赋值给左边操作数C %= A 相当于 C = C % A
<<=左移且赋值运算符C <<= 2 等同于 C = C << 2
>>=右移且赋值运算符C >>= 2 等同于 C = C >> 2
&=按位与且赋值运算符C &= 2 等同于 C = C & 2
|=按位或且赋值运算符C|= 2 等同于 C = C|2
^=C &= 2 等同于 C = C & 22C ^= 2 等同于 C = C ^ 2

杂项运算符

3.1常用杂项运算符

  1. sizeof()返回数据类型(值类型)的大小(求指定值类型所占内存大小,以字节为单位)。sizeof(int),将返回4

  2. typeof()返回class的类型。typeof(StreamReader); 在之后学习反射

  3. 三元运算符:?x:y 条件表达式,如果条件为真?则为x:否则为y

  4. is判断对象是否为某一类型

  5. as-if(ford is car);// 检查ford是否是car类的一个对象。

  6. as强制转换,即使转换失败也不会抛出异常。

3.2三元运算符

Exp1 ? Exp2 : Exp3;

条件运算符 ? :,可以用来替代 if...else语句。它的一般形式如下:

其中,Exp1、Exp2 和 Exp3 是表达式。请注意,冒号的使用和位置。? 表达式的值是由 Exp1 决定的。如果 Exp1 为真,则计算 Exp2 的值,结果即为整个 ? 表达式的值。如果 Exp1 为假,则计算 Exp3 的值,结果即为整个 ? 表达式的值。

3.3 as类型转换

作用基本上和类型前带括号转换方式作用是一样,都是将数据转成目标类型,但是as即使转换不成功,也不会直接抛异常,而使用前缀括号转换不成功直接报错。

 

事件的参数

4.1 sender参数

所有事件的sender参数的类型是一样的:object

sender参数代表事件的发起者对象,这个事件是由哪个对象生成的,那么通过这个sender参数获取到这个对象

4.2 e参数

e参数是事件的触发者对象,这个事件是由哪个对象触发的,则e就是谁,例如所有的鼠标事件,e就是鼠标对象

运算符优先级

类别运算符结合性
后缀() [] . ++ --从左到右
一元+ - ! ~ ++ -- (type) & sizeof从右到左
乘除* /从左到右
加减+从左到右
移位<< >>从左到右
关系< <= > >=从左到右
相等== !=从左到右
位与 AND&从左到右
位异或^从左到右
位或 OR|从左到右
逻辑与 AND&&从左到右
逻辑或 OR||从左到右
条件?:从右到左
赋值= += -= *= /= %=>>= <<= &= ^= |=从右到左
逗号,从左到右
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值