基本数据类型和包装类
- 基本数据类型 与 包装类
- 包装类 : 把基本数据类型 封装成一个对象
- 思考: 封装成一个对象有什么好处?
封装成一个类 类中可以写成员方法
java八大基本类型:
整型:
byte:
byte数据类型是8位、有符号的,以二进制补码表示的整数;
最小值是-128(-2^7);
最大值是127(2^7-1);
默认值是0;
byte类型用在大型数组中节约空间,主要代替整数,因为byte变量占用的空间只有int类型的四分之一;
例子:byte a = 100,byte b = -50。
short:
short数据类型是16位、有符号的以二进制补码表示的整数
最小值是-32768(-2^15);
最大值是32767(2^15 - 1);
Short数据类型也可以像byte那样节省空间。一个short变量是int型变量所占空间的二分之一;
默认值是0;
例子:short s = 1000,short r = -20000。
int:
int数据类型是32位、有符号的以二进制补码表示的整数;
最小值是-2,147,483,648(-2^31);
最大值是2,147,483,647(2^31 - 1);
一般地整型变量默认为int类型;
默认值是0;
例子:int a = 100000, int b = -200000。
long:
long数据类型是64位、有符号的以二进制补码表示的整数;
最小值是-9,223,372,036,854,775,808(-2^63);
最大值是9,223,372,036,854,775,807(2^63 -1);
这种类型主要使用在需要比较大整数的系统上;
默认值是0L;
后面加L或者l,就表示是long长整型;
浮点型:
float:
float数据类型是单精度、32位、符合IEEE 754标准的浮点数;
float在储存大型浮点数组的时候可节省内存空间;
默认值是0.0f;
后面加F或者f,表示float类型;
浮点数不能用来表示精确的值,如货币;
例子:float f1 = 234.5f。
double:
double数据类型是双精度、64位、符合IEEE 754标准的浮点数;
浮点数的默认类型为double类型;
double类型同样不能表示精确的值,如货币;
默认值是0.0d;
后面加D或者d,表示double类型;
例子:double d1 = 123.4。
布尔型:
boolean:
boolean数据类型表示一位的信息;
只有两个取值:true和false;
这种类型只作为一种标志来记录true/false情况;
默认值是false;
例子:boolean one = true。
字符型:
char:
char类型是一个单一的16位Unicode字符;
最小值是’\u0000’(即为0);
最大值是’\uffff’(即为65,535);
char数据类型可以储存任何字符;
例子:char letter = ‘A’。
基本类型的包装类
Integer 、Long、Short、Byte、Character、Double、Floa、Boolean、
主要介绍Integer的一些方法
// 创建一个Integer对象
Integer(int value)
构造一个新分配的 Integer 对象,它表示指定的 int 值
Integer integer1 = new Integer(10);
System.out.println(integer1);
// 利用包装类 打印进制转换
// 进制转换
// 2进制
System.out.println(Integer.toBinaryString(60));
// 8进制
System.out.println(integer.toOctalString(100));
// 16进制
System.out.println(Integer.toHexString(60));
Integer(String s)
构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值。
// 利用字符串来创建Integer对象
Integer integer2 = new Integer(60);
System.out.println(integer2);
// 把Integer类型 转换成 int类型
int intValue = integer2.intValue();
System.out.println(intValue);
parseInt(String s)
将字符串参数作为有符号的十进制整数进行解析。
// 把字符串类型 转换成int类型
int parseInt = Integer.parseInt("100");
System.out.println(parseInt);
1.5版本以后 添加了功能
* 自动装箱功能
* 自动拆箱功能
* 注意:系统帮你拆箱和装箱的过程 其实就是帮你调用转化的方法
```
Integer num1 =10; // 自动装箱
int rel = num1+5; // 自定拆箱
Integer num2 = new Integer(10);
System.out.println(rel);