Java复习之基本数据类型的包装

1.包装类介绍

在Java中有一个设计的原则—“一切皆对象”,java中的基本数据类型就完全不符合这种设计思想,因为八种基本数据类型(int short long byte boolean char float double)并不是引用数据类型,所以Java中为了解决这样的问题,JDK1.5以后引入了八种基本数据类型的包装类

2.基本类型对应的包装类
基本数据类型 包装类
int Integer
char Character
float Float
double Double
boolean Boolean
byte Byte
short Short
long Long

八种包装类分为两大类
(1)Number
Integer Short Long Double Float Byte都是Number的子类表示是一个数字
(2)Object
Character、Boolean都是Object的直接子类

3.装箱及拆箱操作
将一个基本数据类型转换为包装类,那么这个操作成为装箱操作。将一个包装类转换为一个基本数据类型,这样的操作称为拆箱操作

方法 描述
byteValue() Byte->byte
doubleValue() Double->double
floatValue() Float->float
intValue() Integer->int
longValue() Long->long
shortValue() Short->short

包装类的赋值方式:
(1)使用new关键字创建对象
(2)直接给包装类赋值
直接给包装类赋值的时候,当值为1个字节(-128~127)内的数字时,将使用同一个对象

4.转型操作

在包装类中,可以将一个字符串变为指定的基本数据类型,一般在输入数据时会使用较多

转型操作时字符串必须由数字组成,否则会出现错误

在Integer类中将String变为int型数据
public static int parseInt(String s)

在Float类中将String变为float型数据
public static float parseFloat(String s)

Demo:

public class WrapperClassDemo {
    public static void main(String agrs[])
    {
        Long x1 = new Long(100);//创建包装类对象

        long x2 = 100L;

        //自动装箱操作
        Long x3 = 100L;//直接给包装类赋值

        //自动拆箱,相当于x3.longValue()
        long x4 =x3;

        //手动拆箱
        long x5 = x3.longValue();

        //字符串转基本数据类型,字符串必须为数字型的字符串
        String s1 = "12345";

        //把一个字符串转换为int基本数据类型
        int x6 =Integer.parseInt(s1);

        //将一个String字符串转换为Integer
        Integer x7 = Integer.valueOf(s1);
    }
}

5.享元设计模式
它使用共享对象,用来尽可能减少内存的使用量以及分享资源给尽可能多的相似对象,它适合用于当大量对象只是重复因而导致无法令人接受的使用大量内存。通常对象中的部分状态是可以分享。常见的做法是把它们放在外部数据结构,当需要使用时再将它们传递给享元。

运用共享技术有效的支持大量细粒度的对象
Byte Short Long Integer 使用了享元设计模式

你可能感兴趣的:(Java复习)