基本数据类型
整型数据
A.整型数据的表现形式
1.十进制(不能以0开头)
2.八进制(必须以0开头)
3.十六进制(必须以0x或0X开头)
B.整型数据划分
1.byte(1个字节)
2.short(2个字节)
3.int(4个字节)
4.long(8个字节)
声明long类型的变量时,若变量的值超过int类型数据的范围时,需要在值后面加L
浮点型数据
单精度浮点类型(float)
双精度浮点类型(double)
编译器默认小数是double类型的,声明float类型的变量时,要在变量的值后面加f或F
字符型数据
java中char类型用Unicode编码,占两个字节
A.普通字符
1.单个的字符(用单引号括起来)
2.可以与0~65535的整数互换
B.转义字符
具有特殊含义的字符序列,通常以'\'开头
布尔型数据
代表布尔逻辑的数据类型,其值只有true(真)或false(假)
包装类
将基本数据类型封装成Java类,都在java.lang包里面
1.Byte
2.Short
3.Integer
4.Long
5.Double
6.Float
构造方法:
Integer(int m)
Integer (String str)
常用方法:
byteValue()等:返回对象的byte/short/int/long/float/double值
static ValueOf(String str):返回指定字符串的数值,字符串一定要是数字形式,否则会抛NumberFormatExecption(数字格式化异常)
static parseXXX(String str):将字符串转换成数值
包装类缓存机制:
在包装类(Byte,Short,Integer,Long)加载的时候,提前创建了值为(-128~127)的对象,放在其类的内部类xxxCache的cache数组中,当我们用该类的valueOf()方法获取该类的对象时,先判断参数的值的范围是否在-128~127内,若在就返回cache数组中与之值对应的对象,否则就创建新的对象
Integer i = Integer.valueOf("15");
Integer j = Integer.valueOf("15");
System.out.println(i == j);//true
7.Character
8.Boolean
自动装箱/拆箱
JDK 1.5 之后版本的新特性
自动装箱:自动将基本数据类型的值装入到包装类的对象里面
自动拆想:自动将包装类对象的值取出来
Integer a = 5;//自动装箱 <==> Integer a = new Integer(5);