算术运算符
一、类型转换分类
隐式转换(自动类型提升):把一个取值范围小的数值,转换成数值范围大的数据
取值范围从小到大依次是:byte - short - int - long - float - double
注:byte 的取值范围是: -128 到 127
转换规则:
(1)byte,short,char 参与计算时,会自动转化为int
(2)取值范围小的和大的进行计算,小的会先提升为大的,再进行运算
注:数据类型不一样,不能进行计算,需要转换成一样的才可以计算。
例1:
byte a1 = 2;
byte a2 = 4;
result = a1 + a2;
#结果的数据类型为int
例2:
byte n = 5;
short m = 10;
long i = 100L;
result = n + m + i;
#结果的数据类型为long
强制转换:把一个取值范围大的数值,转换成数值范围小的数据
格式:目标数据类型 变量名 = (目标数据类型)被强制转换的数据;
例:
double i = 33.3;
int n = (int)i;
#此时 n = 33
二、字符串的 “ + ” 操作
1.连续进行 “ + ” 操作时候,从左到右逐个执行。
例:11+22+“是数字” 最终输出为:33是数字
2.当“ + ”操作中出现字符串是,+就变成了字符串连接符,而不是算数运算符,将前后的数据拼接,并产生一个新的字符串。
例:"11" + 22 = "1122"
-----
3.3 + "aa" = "3.3aa"
-----
int age = 20;
System.out.println(”这个同学的年龄“ + age + "岁");//”这个同学的年龄是20岁“
System.out.println(”这个同学的年龄“ + ”age“ + "岁");//”这个同学的年龄是age岁