1.算数运算
+ - * /
%取余,注意,%两侧只能是整数类型。《取余结果的正负性跟%左边相关》
2.赋值运算符
// 赋值运算符
int a = 10; // 将10赋值给a;
//复合赋值运算符
a += 5 ; // a = a + 5;
a -= 5 ; // a = a - 5;
a += 5 + 2 ;// a = a + 5 + 2;
3.自增自减
// 自增 自减 a++ / a-- / ++a / --a
int a = 10;
a++ ;// 11
++ a; //12
a--; // 11
--a; //10
//运算符 除优先级外 从右到左计算
//a++ 跟 ++a 的区别
int a, b = 10;
a = b++;
NSLog(@"a的值是10,b的值是11");
a = ++b;
NSLog(@"a的值是11,b的值是11");
//注意
a = (b++) + (++b);
a = 11 + 12;
4.关系运算符 返回值是bool
//非 0 的值都是真,条件成立。 0 为假,条件不成立
关系运算符中 == !=的优先级相等,< > <= >= 优先级相等,后边的优先级高于前边的两个
2 == 3 > 1
2 == 1;
返回值是0;
关系运算符 从左到右
>
<
>=
<=
==
!=
int a = 5;
int b = 10;
int c = a < b;
NSLog(@"如果a < b ,c的值 是 1, 否则为0");
2
5.逻辑运算符 && || !
返回值 只有 真(1) 假(0) 两个值
&& a && b a 和 b的条件都满足 才返回真
|| a || b a 和 b 的条件有一个满足就为真
!逻辑非 如果是真,返回假 ,如果是假,返回真
6.三目运算符
//三目运算符 条件 ? 数值1 : 数值2//如果条件成立返回数值1,不成立返回数值2
int a = 10 > 5 ? 10 : 5;
//计算三个整数之间最大值
int a = 10 , b = 15 , c = 20 ;
int d = (a > b) ? a : b;
int e = (d > c) ? d : c ;
NSLog(@"e 就是最大值");