基本类型与包装类型 (8种基本数据类型)
整数类型 byte、short、int、long
浮点类型 float与double
字符类型 char
真假类型 boolean
整数类型默认值类型是int
浮点型默认是double类型,因为double的数值精度是float的两倍
byte 1个字节
char 1个字节 -2^7~2^7-1(-128 ~127)
short 2个字节 -2^15~2^15 - 1(-32768~+32767)
int 4个字节 -2^31~2^31-1(-2147483648~2147483647)
long 8个字节
float 4个字节 -2^128 ~ 2^128(-3.40E+38 ~ +3.40E+38 )
double 8个字节
boolean 1个字节 (1和0)
静态的基本数据类型属于局部变量表
包装类型
基本类型包装成对象就可以让有对象类的一些操作,虽然包装类对象是不能被继承。(因为被final修饰),但是我们应用对象,正是因为面向对象的几个特征:封装、继承、多态、抽象。这也是面向对象的核心吧
byte Byte
char Character
short Short
int Integer
long Long
float Float
double Double
boolean Boolean
int类型到Integer转变其实是调用了Integer.valueOf
新建的Integer对象都是从缓存里面取的
包装类的作用:
提供:字符串、基本数据类型、对象之间互相转化的方式!
包含每种基本数据类型的相关属性,如:最大值、最小值等
包装类的转换方法
//将字符串”120”按照十进制转换为int,则结果为120
int n = Integer.parseInt(“120”,10);
//将字符串”12”按照十六进制转换为int,则结果为18
int n = Integer.parseInt(“12”,16);
//将字符串”ff”按照十六进制转换为int,则结果为255
int n = Integer.parseInt(“ff”,16);
toString方法
自动装箱
基本类型就自动地封装到与它相似类型的包装中,如:Integer i = 100;
本质上是,编译器编译时自动添加:Integer i = new Integer(100);
自动拆箱
包装类对象自动转换成基本数据类型。如:int a = new Integer(100);
本质是上,编译器编译时自动添加:int a = new Integer(100).intValue();
Character包装类的常用方法
Character.isLetter('a');//判断这个字符是否为英文字母
Character.isDigit('1');//判断这个字符是否为数字
Character.isUpperCase('A');//判断这个字符是否为大写
Character.isLowerCase('a');//判断这个字符是否为小写
Character.isWhitespace(' ');//判断这个字符是否为空格或回车