一. 运算符:
1. 算数运算符:
基本运算符:+ - * / %
自增自减:++ --
a. 在单独使用变量进行++或者--的操作时,相当于变量=变量+1.
b. 在变量进行操作的时候:
1). i++ i--如果在变量后面,先运算,再赋值,如:a=i++;先运算a=i,后运算i=i+1,所以输出结果为a=1,a=i--亦是如此
2). ++i --i如果在变量前面,先赋值,再运算,如:a =++i 先运算i=i+1,后运算a=i,输出结果为a=2,a=--i亦是如此。
记忆方法: 当++在变量前面,必然会形成 = ++的格式(如:a=++1),而=++从左至右运算不符合规定,因此,先算变量自增1,
当++在变量后面,必然会形成=i的格式(如:a=i++),因此,先赋值给a,i再自增
int i = 1;
int j = ++i + i++;
/*
*i输出3.j输出4
*第一步 ++i得到 i=2
*第二步 j= 2+i++(此时的i=2);j=4
*第三步 i = i++;得到i=3
*/
System.out.println(i);
System.out.println(j)
2. 赋值运算符:
基本的赋值运算符: =
扩展的运算符: += -= *= /= %=
a += b ; // 公式: a = (a的数据类型)(a+b);
a -= b ; // 公式: a = (a的数据类型)(a-b);
a *= b ; // 公式: a = (a的数据类型)(a*b);
a /= b ; // 公式: a = (a的数据类型)(a/b);
a %= b ; // 公式: a = (a的数据类型)(a%b);
扩展的赋值运算符可以进行了自动的强制类型转换。
byte b3 = 1;
byte b2 =2;
b3+=b2; //相当于: b1 = (byte)(b1+b2);
System.out.println(b3);
int a10 = 10 ;
byte b10 = 2 ;
//a += b ; // 公式: a = (a的数据类型)(a+b);
//a -= b ; // 公式: a = (a的数据类型)(a-b);
//a *= b ; // 公式: a = (a的数据类型)(a*b);
//a /= b ; // 公式: a = (a的数据类型)(a/b);
//a %= b ; // 公式: a = (a的数据类型)(a%b);
b10 %= a10 ; // 公式: b = (b的数据类型)(b%a);
System.out.println(b10);