基本类型的类型转换
1. java是强类型的语言。
A.所有变量,必须先声明,后使用。
B.指定类型的比那里,只能装相应类型的值。
8个基本类型,7个数值型+1个boolean型。
7个数值型(4个整型,2个浮点型,char可当成正整型)
java的类型转换可分为两种:
1.自动类型转换
表数范围小的,可以自动转换表数范围大的。
直接写一个整数,默认是int型,但如果它的范围在byte、short表数范围内,而且程序直接将它赋给byte、short类型的变量,系统会自动把他当成byte、short用。
1. 所有数值型,都可以自动转换为double类型。
2. 所有数值型,除了double之外,都可以自动转换为float。
3. 所有整型都可以自动转换为long型。
2. 强制类型转换:
当我们要把表数范围大的变量或值,转为表数范围小的时候,就需要使用强制转换。
语法格式:
(类型)
3.表达式类型的自动提升
规则:整个表达式的数据类型,与表达式中的最高等级的运算数的类型相同。
直接量:
直接在源代码中指定的值,就是直接量
8个基本数据类型,都可以指定直接量
boolean类型,只有两个直接量:true,false
null直接量,只能赋值给引用变量。null直接量不能赋值给基本类型的变量。
运算符:
算术运算符:+ - * / %
++ -- 只能操作一个变量
加1 减1
++ -- 即可放在变量之前,也可放在变量之后。
++可放在变量之前,先把变量+1,然后再拿来用,
++可放在变量之后,先把变量拿来用,然后再拿来+1
--可放在变量之前,先把变量-1,然后再拿来用,
--可放在变量之后,先把变量拿来用,然后再拿来-1
赋值运算符: = ,把右边的值,赋值给左边的变量。
位运算符
& 按位与 只要上下两位都是1,才得到1
| 按位或 只有上下两位有一个1,就会得到1
~ 按位非 按位取反
^ 按位异或 只要上下两位不一样,就会得到1
<< 左移 在右边补0,在没有数据溢出的前提下,相当于在右 边补充N个0,也就是乘以2的N次方
>> 右移 在左边补符号位, 右移N为相当于除以2的N次方, 小数部分全部舍弃
>>> 无符号右移:在左边补0
1. java是强类型的语言。
A.所有变量,必须先声明,后使用。
B.指定类型的比那里,只能装相应类型的值。
8个基本类型,7个数值型+1个boolean型。
7个数值型(4个整型,2个浮点型,char可当成正整型)
java的类型转换可分为两种:
1.自动类型转换
表数范围小的,可以自动转换表数范围大的。
直接写一个整数,默认是int型,但如果它的范围在byte、short表数范围内,而且程序直接将它赋给byte、short类型的变量,系统会自动把他当成byte、short用。
1. 所有数值型,都可以自动转换为double类型。
2. 所有数值型,除了double之外,都可以自动转换为float。
3. 所有整型都可以自动转换为long型。
2. 强制类型转换:
当我们要把表数范围大的变量或值,转为表数范围小的时候,就需要使用强制转换。
语法格式:
(类型)
3.表达式类型的自动提升
规则:整个表达式的数据类型,与表达式中的最高等级的运算数的类型相同。
直接量:
直接在源代码中指定的值,就是直接量
8个基本数据类型,都可以指定直接量
boolean类型,只有两个直接量:true,false
null直接量,只能赋值给引用变量。null直接量不能赋值给基本类型的变量。
运算符:
算术运算符:+ - * / %
++ -- 只能操作一个变量
加1 减1
++ -- 即可放在变量之前,也可放在变量之后。
++可放在变量之前,先把变量+1,然后再拿来用,
++可放在变量之后,先把变量拿来用,然后再拿来+1
--可放在变量之前,先把变量-1,然后再拿来用,
--可放在变量之后,先把变量拿来用,然后再拿来-1
赋值运算符: = ,把右边的值,赋值给左边的变量。
位运算符
& 按位与 只要上下两位都是1,才得到1
| 按位或 只有上下两位有一个1,就会得到1
~ 按位非 按位取反
^ 按位异或 只要上下两位不一样,就会得到1
<< 左移 在右边补0,在没有数据溢出的前提下,相当于在右 边补充N个0,也就是乘以2的N次方
>> 右移 在左边补符号位, 右移N为相当于除以2的N次方, 小数部分全部舍弃
>>> 无符号右移:在左边补0