Java基本数据类型和包装类
一、Java的两大数据类型:基本数据类型、引用类型。Java中除了八种基本数据类型,其他都是引用类型。
1.基本数据类型的值是放在变量里面; 变量里内存的地址就是引用类型。
2.Java语言提供了八种基本数据类型。六种数字类型(四个整数型,两个浮点型),一 种字符类型,还有一种布尔型。
整形:byte、short、int、long
byte: 占1字节(B), 8位(bit:8个内存空间为一为一个字节)范围:-2^7到 2^7-1默认值0
short:占2个字节,16位;范围:-2^15 到 2^15-1 ;默认值是0 ;Short 数据类型可以节省空间。一个short变量是int型变量所占空间的二分之一
int:占4个字节,32位 范围:-2^31 到 2^31-1 默认值是 0
long:占8个字节,64位 范围:-2^63 到 2^63-1 默认值是 0L 后用l或L进行标识 建议使用L
注意:
整形范围的第一位是符号位,符号位为:“+:0”,“-:1”
10000代表为-128;000000代表:0
浮点型: float,double
float:占4个字节,32位,后用f或F进行标识 单进度浮点型
double:占8个字节,64位,小数默认的是double类型,double类型后可以用D或d标识,但一般不加 双进度浮点型
字符类型: char
char: 占2个字节,16位
char类型有多种写法:
1. g='a' 字符;
2.h='\r' 特殊的转义字符;
3.i='\u9990' Unicode字符集\u0000-\uFFFF;
4.j=65535字符0到 65535=\uFFFF;
特殊的转义字符还有:\n 换行(\u000a);\t 水平制表符(\u0009);\b 空格(\u0008);\r 回车(\u000d);\f 换页(\u000c);\' 单引号(\u0027);\" 双引号(\u0022);\\ 反斜杠(\u005c)
Java中char类型中本质存的就是Unicode的字符集,这是全球通用字符集,它的每一位都是十六进制
布尔型: boolean
boolean:1字节 8位 true/false
二、基本数据类型对应的类类型叫做包装类
1.包装类:Byte、Short、Integer、Long、Float、Double、Character、Boolean
2.包装类都是首写字为大写,只有几个特殊int= Integer;char= Character
3. 这八种包装类所继承的父类不全都相同
Integer ,Byte,Float,Double,Short,Long都属于Number类的子类,Number类本身提供了一系列的返回以上六种基本数据类型的操作;Character属于Object子类;Boolean属于Object子类。
4.包装类提供一些类型转换的方法 、类型的属性
5.Java中字符串类型是引用类型,引用类型首写字母是大写
6.在java中类型转换只有两种方法:一种就是包装类转换,还有一种就是强行转换。
7.类型的属性:
基本类型:byte 二进制位数:8
最小值:Byte.MIN_VALUE=-128
最大值:Byte.MAX_VALUE=127
基本类型:short 二进制位数:16
最小值:Short.MIN_VALUE=-32768
最大值:Short.MAX_VALUE=32767
基本类型:int 二进制位数:32
最小值:Integer.MIN_VALUE=-2147483648
最大值:Integer.MAX_VALUE=2147483647
基本类型:long 二进制位数:64
最小值:Long.MIN_VALUE=-9223372036854775808
最大值:Long.MAX_VALUE=9223372036854775807
基本类型:float 二进制位数:32
最小值:Float.MIN_VALUE=1.4E-45
最大值:Float.MAX_VALUE=3.4028235E38
基本类型:double 二进制位数:64
最小值:Double.MIN_VALUE=4.9E-324
最大值:Double.MAX_VALUE=1.7976931348623157E308
基本类型:char 二进制位数:16
最小值:Character.MIN_VALUE=0
最大值:Character.MAX_VALUE=65535
Integer是进制转换的类
8.人算的进制转换,一般我们长见的都是十进制,所以我们都是以十进制为中间桥梁来转。
进制转换公式:sum(数值*进制^(数值所在位数-1))
9. 装箱及拆箱
将基本数据类型赋值包装类称为装箱。
将包装类的类型赋值基本数据类型称为拆箱。
在JDK1.5之后,提供了自动装箱和自动拆箱功能。