C#初入之运算符

在这里插入图片描述


运算符

运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。C#有丰富的内置运算符

数学运算符

主要进行数据运算

分类

运算符描述实例,假设A的变量为10,B的变量为20.

在这里插入图片描述



当然还会遇到一些特殊情况,例如:
1."+"运算符的作用
符号两边的数据类型都是数字类型数据则起到数学相加作用

int a=10;
int b=20;
textBox1.text=(a+b).Tostring();

符号两边数据其中一个是字符串类型则起到字符串连接作用

string str="您好";
bool b=flase;
textBox2.text=str+b;

在这里插入图片描述



2."/"运算符的作用
如果符号两边的数据类型都是整数类型,则这个符号是取整符号

int a=3;
int b=2;
textBox1.text=(a/b).Tostring();

如果符号两边的数据类型至少有一个是浮点型,则这个符号是取余符号

int c=3;
double d=2;
textBox2.text=(c/d).Tostring();

在这里插入图片描述



3.自加自减
假设A的值为10;
在这里插入图片描述

 int A = 10;
 int B;
 B = A++;
 textBox1.Text = "B=" + B + ";A=" + A;
 B = ++A;
 textBox2.Text = "B=" + B + ";A=" + A;

在这里插入图片描述


位运算符

位运算符作用于位,并逐位执行操作。&、 | 和 ^ 的真值表如下所示:

在这里插入图片描述
下表列出了C#支持的位运算符。假设变量A的值为60,变量B的值为13,则
在这里插入图片描述


逻辑运算符

下表显示了C#支持的所有逻辑运算符。假设变量A为布尔值true,变量B为布尔值false,则:

在这里插入图片描述

label1.Text = ((textBox1.Text == "A") && (textBox2.Text == "A")).ToString();
label2.Text = ((textBox1.Text == "A") || (textBox2.Text == "A")).ToString();
label3.Text = (!((textBox1.Text == "A") && (textBox2.Text == "A"))).ToString();

在这里插入图片描述


但是也要注意以下问题

&与&&

1.&和&&都表示逻辑与(and)的运算符,只有当运算符两边的结果都是true整个运算才为true 2.&&具有短路功能,如果左边表达式结果为false则右边表达式不再进行运算判断。而&则不然,不论左边表达式结果是true还是false,右边表达式仍然会进行运算判断
例如:
int a = 60; 
int b = 13;
label1.Text ="&"+ ((a++>70) & (b++<20)).ToString()+"【a="+a +"】【b="+b +"】";
a = 60;
b = 13;
label2.Text = "&&"+((a++>70) && (b++<20)).ToString()+"【a="+a+"】【b="+b +"】";

|与||

1. | 和 || 都表示逻辑或(or)的运算符,运算符两边的表达式只要有一个是true整个表达式都是true
2. || 具有短路功能,如果左边的表达式结果为true则右边表达式不再进行运算判断。而 | 则不然,不论左边表达式结果是true还是false,右边表达式都会进行运算判断
a = 60;
b = 13;
label3.Text="|"+((a++>70)|(b++<20)).ToString()+ "【a="+a+"】【b="+b+"】"; 
a = 60;
b = 13;
label4.Text="||"+((b++<20)||(a++>70)).ToString()+"【a="+a+"】【b="+b+"】";

在这里插入图片描述


关系运算符

两个数据之间的关系运算,假设变量 A 的值为10,变量 B 的值为20,则:

在这里插入图片描述


注意:
1.和属性赋值一样,需要处理关系的这两个数据之间必须保持类型最终一致
2关系运算符运算的最终结果值只有两个:true、false


赋值运算符

赋值运算符:等号左边进行数据赋值时,等号右边考虑是否进行赋值运算

常见的赋值运算符

在这里插入图片描述
在这里插入图片描述

int a = 10, 
b = 12, c;
label1.Text = "c=a+b:c=" + (a + b);
label2.Text = "b+=a:b=" + (b += a);

在这里插入图片描述


杂项运算符

1. sizeof()返回数据类型(值类型)的大小。sizeof(int),将返回4
2. typeof()返回class的类型。typeof(StreamReader);
3. &返回变量的地址。&a;将得到变量的实际地址。
4. “※”变量的指针。*a;将指向一个变量。
5. ?x:y-条件表达式,如果条件为真?则为x:否则为y
6. is判断对象是否为某一类型。
7. as-if(ford is car);// 检查Ford是否是Car类的一个对象。as强制转换,即使转换失败也不会抛出异常
string str = "";
label1.Text ="bool类型的大小是:"+ sizeof(bool).ToString();
label2.Text="string类型属于"+typeof(Form)+"类";
label3.Text = "三元表达式进行对a赋值(10,8)比较大的数:a=" + (10 > 8 ? 10 : 8);

在这里插入图片描述


三元运算符

三元运算符的格式为:Exp1 ? Exp2 : Exp3;
条件运算符 ? :.可以用来替代 if...else语句.它的一般形式如下:
其中,Exp1、Exp2 和 Exp3 是表达式。请注意,冒号的使用和位置。? 表达式的值是由 Exp1 决定的。如果 Exp1 为真,则计算 Exp2 的值,结果即为整个 ? 表达式的值。如果 Exp1 为假,则计算 Exp3 的值,结果即为整个 ? 表达式的值
int a = 10;
int b = 15;
(a > b ? a < b : a == b).ToString();
listBox1.Items.Add((a > b ? a < b : a == b).ToString());

在这里插入图片描述


当然运算符也区分优先级

在这里插入图片描述


运算符应用还是很广的我们应该多加练习,才能牢牢铭记!!!

在这里插入图片描述

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

木偶☜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值