包装类型(十六)

包装类型(十六)

我们已经知道,Java的数据类型分为两种,基本类型和引用类型

基本类型有:byte short int long float double char boolean

引用类型有:类和接口

引用类型可以赋值为null,但基本类型不能赋值为null

String s = null;
int n = null; //这里会报错compile error!

那么,如何把基本类型变为引用类型呢?可以考虑自定义一个类,将基础类型的值封装在内部

WrapperDemo1

package com.importc;

public class WrapperDemo1 {
    private int value;

    public WrapperDemo1 (int value) {
        this.value = value;
    }

    public int getValue() {
        return this.value;
    }
}

Application

package com.importc;

public class Application {
    public static void main(String[] args) {

        WrapperDemo1 w1 = null;

        WrapperDemo1 w2 = new WrapperDemo1(3);

        int n3 = w2.getValue();

        System.out.println(n3);

    }
}

这样就可以实现把基本类型变为一个对象,而外面的这一层包裹的类就称作包装类;实际上因为包装类十分常用,Java核心库已经帮我们提供了各种基本类型的包装类:

基本类型 对应的引用类型
boolean java.lang.Boolean
byte java.lang.Byte
short java.lang.Short
int java.lang.Integer
long java.lang.Long
float java.lang.Float
double java.lang.Double
char java.lang.Character

我们可以不用自己定义,直接拿来使用

package com.importc;

public class WrapperDemo2 {
    public static void main(String[] args) {

        int a = 99;
        Integer n1 = Integer.valueOf(a); //参数为int
        System.out.println(n1);

        String b = "99";
        Integer n2 = Integer.valueOf(b); //参数为String
        System.out.println(n2);

        int c = n1.intValue();
        System.out.println(c);

        System.out.println("==========");

        Double d1 = Double.valueOf("123.45");
        System.out.println(d1);

    }
}
posted @ 2021-02-18 17:22  LucaZ  阅读(32)  评论(0编辑  收藏  举报