第四章 数据类型转换
- Java程序中要求参与的计算的数据,必须要保证数据类型的一致性,如果数据类型不一致将发生类型的转换。
自动转换(隐式)
- 一个int类型变量和一个byte类型变量进行加法运算,运算结果,变量的类型将是int类型,这就是数据类型的自动转换现象。
- 特点:代码不需要进行特殊处理,自动完成
- 规则:数据范围从小到大(与字节数不一定相关)
强制转换(显式)
- 特点:代码需要进行特殊格式的处理,不能自动完成
- 格式:范围小的类型 范围小的变量名 = (范围小的类型) 原本范围大的数据;
- 将1.5赋值给int类型变量会发生报错,这是因为double类型的数据范围大于int类型。
转换格式:
将1.5赋值到int类型,代码如下:
注意事项:
- 不推荐使用,可能造成精度的损失
- byte/short/char这三种数据类型都可以发生数学运算,例如加法
- byte/short/char在运算时,先提升为int类型,再运算
- boolean类型不能发生数据类型的转换
_ASCII编码表
48——0
65——A
97——
-
数字和字符的对照关系表(编码表);
- ASCII码表:美国信息交换标准代码
2.Unicode码表:万国表,也是数字和符号的对照关系
运算符
算数运算符
- 一但运算中有不同的数据类型,结果会是范围大的那种数据类型
四则运算中"+"号的使用
- 对于数值来说,就是加法
- 对于字符char类型来说,在计算之前,char会被提升为int,然后再计算,对照关系,看ASCII码表
- 对于字符串String(首字母大写,并不是关键字),加号代表字符串连接操作
自增自减运算符
自增运算符:++
自减运算符:--
基本含义:让一个变量涨一个数字1,或者让一个数字降一个数字1
使用格式:在变量名称之前或者之后,例如num++和++num
-
使用方法:
- 单独使用:不和其他任何操作混合,自己独立成一个步骤
- 混合使用:和其他操作混合,例如与赋值混合,打印混合
-
使用区别:
在单独使用时,前++与后++没有任何区别
在混合使用的时候,有重大区别
如果是前++,那么这个变量立刻+1,然后拿着结果进行操作
如果是后++,那么先使用变量本来的数值,然后再加1
注意事项:只有变量可以使用自增自减运算符,常量不可以使用
赋值运算符
- 基本赋值运算符:将符号右边的值,赋值给左边的变量
- 符合赋值运算符
-
复合赋值运算符
- +=:a+=1->a=a+1
- -= :b-=1->b=b-2
- = :c=1->c=c*1
- /= :d/=1->d=d/1
- %=:e%=1->e=e%1
-
注意事项
- 只有变量才能使用赋值运算符,常量不可以使用
- 复合赋值运算符中隐含强制转换