蓝鸥(www.lanou3g.com)是一家集产、学、研、创为一体的综合性移动互联网研发培训机构,致力于iOS开发、Unity3D游戏开发、Android开发、HTML5前端开发和Web安全攻防等技术人才的培养。
运算符:是一个符号,连接操作数、根据操作返回一个值。
表达式:使用运算符将操作数连接起来的有效的式子!
下面就让我们根据蓝鸥Unity开发基础——6. 运算符和表达式以前学习一下,在C#中的运算符和表达式是如何操作和使用的,内容比较多,大家不要走开!一起和蓝鸥学习Unity3D开发!
一、加减乘除运算符
1、除号连接的两个操作数都是整数,结果也是整数,所以a最后的结果是2,而不是2.5;
usingSystem;
namespaceLesson06
{
classMainClass
{
publicstaticvoidMain(string[]args)
{
inta=0;
a=5+2;//表达式使用运算符将操作数连接起来的有效的式子!
a=5-2;
a=5*2;
//除号连接的两个操作数都是整数,结果也是整数
a=5/2;//2舍去了小数部分
Console.WriteLine(a);
}
}
}
2、那么如何才能让a=5/2 的值是2.5?需要把a的数据类型给成float类型同时在除非的两个数值中,需要把其中一个值加上f!
usingSystem;
namespaceLesson06
{
classMainClass
{
publicstaticvoidMain(string[]args)
{
floata=0;
a=5+2;//表达式使用运算符将操作数连接起来的有效的式子!
a=5-2;
a=5*2;
//除号连接的两个操作数都是整数,结果也是整数
a=5f/2;//2舍去了小数部分
Console.WriteLine(a);
}
}
}
二、正负号也是运算符,属于单目运算符,一元运算符,上面我们介绍的是双目运算符或者叫二元运算符!之后可能会遇到三目运算符等……
//双目运算符,二元运算符
inta=0;
a=5+2;//表达式使用运算符将操作数连接起来的有效的式子!
a=5-2;
a=5*2;
//除号连接的两个操作数都是整数,结果也是整数
a=5/2;//2舍去了小数部分
Console.WriteLine(a);
//正负号也是运算符
//单目运算符,一元运算符
a=-5;
Console.WriteLine(a);
三、取余运算符
//双目运算符,二元运算符
inta=0;
a=5+2;//表达式使用运算符将操作数连接起来的有效的式子!
a=5-2;
a=5*2;
//除号连接的两个操作数都是整数,结果也是整数
a=5/2;//2舍去了小数部分
Console.WriteLine(a);
//正负号也是运算符
//单目运算符,一元运算符
a=-5;
Console.WriteLine(a);
//取余运算符
a=5%2;//5对2取余,结果是1,商是2,余数1.
Console.WriteLine(a);
四、赋值运算符
a=52;//将右边操作数的值赋给左边
//C#中成立,把a+1重新赋值给a,但是在数学中是不成立
a=a+1;
Console.WriteLine(a);
【蓝鸥Unity开发基础】6.运算符和表达式纠错
1、在数学中,常见的赋值情况,在C#中是不成立 52=a;这种情况会报错!
2、a=a+1;C#中成立,把a+1重新赋值给a,但是在数学中是不成立
//双目运算符,二元运算符
inta=0;
a=5+2;//表达式使用运算符将操作数连接起来的有效的式子!
a=5-2;
a=5*2;
//除号连接的两个操作数都是整数,结果也是整数
a=5/2;//2舍去了小数部分
Console.WriteLine(a);
//正负号也是运算符
//单目运算符,一元运算符
a=-5;
Console.WriteLine(a);
//取余运算符
a=5%2;//5对2取余,结果是1,商是2,余数1.
Console.WriteLine(a);
//赋值运算符
a=52;//将右边操作数的值赋给左边
//C#中成立,把a+1重新赋值给a,但是在数学中是不成立
a=a+1;
Console.WriteLine(a);
五、自增自减运算符
//自增自减运算符是a=a+1;的简便写法
a=a++;//自增
a=a--;//自减
Console.WriteLine(a);
【蓝鸥Unity开发基础】6.运算符和表达式纠错
1、自增自减运算符放在变量的后面,是先计算,后自增自减!
a=2;
intb=a++;
Console.WriteLine(b);//b=2
Console.WriteLine(a);//a=3
2、自增自减运算符放在变量的前面,是先自增自减,后计算!
a=2;
b=++a;
Console.WriteLine(b);//b=3
Console.WriteLine(a);//a=3
六、特殊的赋值运算符+=-=*=/=%=
a=2;
a=a+5;//使a在原有的基础上增加5
Console.WriteLine(a);//a=7
//另外一种写法
a+=5;//a=a+5;
a-=5;//a=a-5;
a*=5;//a=a*5;
a/=5;//a=a/5;
a%=5;//a=a%5;
Console.WriteLine(a);
七、运算符的优先级+运算符的结合性
运算符的优先级+运算符的结合性举例:
a=0;
b=5;
a=4*5-6/4+b++;//a=/24
Console.WriteLine(a);
a=0;
a=4*5-6/4;//a=19
Console.WriteLine(a);
为什么第一个输出a=24 ,第二个输出a=19?结合运算符的优先级+结合性,大家一起动脑想一下吧!
小技巧:用括号来提示有现金
//利用口号提升优先级
a=0;
a=4*(5-6)/4;//a=-1
Console.WriteLine(a);
//练习题1
a=3;
b=0;
b=a++;
Console.WriteLine(a);
Console.WriteLine(b);
//练习题2
a=3;
b=0;
b=++a;
Console.WriteLine(a);
Console.WriteLine(b);
大家一起来做一些练习题吧!看看得出的结果是否和预想是一样的?