自增(自减同理)
1 //++无论放在操作数前面或者后面都会让操作数自增1
2 int num1=5;
3 num1++; // num1的值自增1,为6
4
5 int num2=5;
6 ++num2; //num2的值自增1,为6
++放在操作数后面,即num++,会先使用操作数进行运算,然后再自增1.
++放在操作数前面,即++num,会先进行自增1,然后再进行运算.
--同理.
例:
1 int num=30;
2 int res=num++; //++在后,num先进行运算,将值赋给res,然后自增1
3 Console.WriteLine(res); //输出res的值为30
4 Console.WriteLine(num); //num的值为31
1 int num=45;
2 int res1=num++; //res1:45 num:46
3 int res2=++num; //res2:47 num:47
4 int res3=--num; //res3:46 num:46
增加难度:
1 //练习1
2 int x = 1, y = 1;
3 if (x++ == 2 & ++y == 2)
4 {
5 x = 7;
6 }
7 Console.WriteLine("x={0},y={1}",x,y);
8 Console.ReadKey();
答案: x=2,y=2
1 //练习2
2 int x = 1, y = 1;
3 if (x++ == 2 && ++y == 2)
4 {
5 x = 7;
6 }
7 Console.WriteLine("x={0},y={1}",x,y);
8 Console.ReadKey();
答案: x=2,y=1
1 //练习3:这段代码运行后,i,j,k的值分别为多少?
2 int i=0;
3 int j=i++ + ++i;
4 int k=--i + i--;
5 Console.WriteLine("i={0},j={1},k={2}",i,j,k);
6 Console.ReadKey();
答案:i=0,j=2,k=2