常量的分类
变量的使用
- 必须要写上数据类型
- 必须初始化,必须赋初值,两者可以分开进行,也可以一句完成
基本数据类型
整型
不同进制的表示方法
十进制整数,如:99, -500, 0
八进制整数,要求以 0 开头,如:015
十六进制数,要求 0x 或 0X 开头,如:0x15
二进制:要求0b或者0B开头,如:0b11
整型的数据类型
不同进制打印
不管你定义变量的时候用的是几进制,System.out.println的时候都是打印出十进制
当你给一个非int型整数赋值
- 超范围的赋值会报错
- 要想把一个数给long类型变量,那么后面加上L(推荐)或者l就可以了,比如
long num5 = 12345678910L;
。注意:只有这个数超出int类型的范围了后面才需要加上L,否则无需加L也可以赋值给long类型
浮点型
表示方法
(1)十进制数形式,例如:
3.14 314.0 0.314
(2)科学记数法形式,如
314e2 314E2 (E的大小写没有区分) 314E-2
浮点型的数据类型
float类型的数值有一个后缀F或者f ,没有后缀F/f的浮点数值默认为double类型。
也可以在浮点数值后添加后缀D或者d, 以明确其为double类型。
注意点
- 浮点型默认是double类型的,要想将一个double类型的数赋给float类型,必须后面加上F或者f
- 我们最好不要进行浮点类型的比较
字符类型
字符类型使用方法
数据类型为char,用单引号表示,java中无论:字母,数字,符号,中文都是字符类型的常量,都占用2个字节。
char 类型用来表示在Unicode编码表中的字符。
转义字符
ASCII表
布尔类型
boolean类型有两个常量值,true和false,在内存中占一位(不是一个字节),不可以使用 0 或非 0 的整数替代 true 和 false ,这点和C语言不同。
数据类型转换
布尔类型不能进行数据类型转换,因此多种数据类型参与运算的时候,整数类型,浮点类型,字符类型都可以参与运算,唯独布尔类型不可以参与运算。
强制转换
格式:(需要强制转成的目标数据类型)需要被强转的数据/变量
强制转换的原理:直接切
所以浮点强转为int的表现形式为:不管小数是什么,直接把小数扔掉