day16 java 包装类

包装类

包装类 : Java给每种基本数据类型都创建了一个对应的类 该类叫作包装类。

包装类的作用: 包装类可以弥补基本数据类型在面向对象的环境中的局限性和便利性。

复制代码
自动拆箱 :将包装类的类型转成基本数据类型。
自动装箱 :将基本数据类型转成包装类的类型
java 复制代码
@Test
    public void test2(){
        //创建Integer类的对象
        Integer var = new Integer(1);

        int a = var;//自动拆箱 -- 只有包装类可以这么做

        Integer var2 = 220;//自动装箱 -- 只有包装类可以这么做
    }
java 复制代码
public class WrapperTest2 {

    /*
        包装类 -> 基本数据类型 :自动拆箱
     */
    @Test
    public void test(){
       //方式一 :自动拆箱
       int a = new Integer(2);

       //方式二(知道就可以):
        Integer var = new Integer(2);
        int i = var.intValue();
        System.out.println(i);
    }

    /*
        基本数据类型 -> 包装类 :自动装箱
     */
    @Test
    public void test2(){
        //方式一 :自动装箱
        Integer a = 10;

        //方式二(知道即可): 通过构造器
        int b = 10;
        Integer var = new Integer(b);
    }

    /*
        基本数据,包装类 -> String
        包装类 -> String   : 调用包装类的toString方法
        基本数据 -> String : ①字符串拼接 ②String.valueOf()
     */
    @Test
    public void test3(){
        //基本数据类型 -> String
        //方式一 : 字符串拼接
        int a = 10;
        String s = a + "";
        //方式二 : String.valueOf()
        String s2 = String.valueOf(a);

        //包装类 -> String : 调用包装类的toString方法
        Integer i = new Integer(10);
        String s3 = i.toString();
    }

    /*
        String -> 基本数据类型,包装类
        String -> 基本数据类型 : 对应的包装类.parseXxxx
        String -> 包装类 :通过包装类的构造器
     */
    @Test
    public void test4(){
        //String -> 基本数据类型 : 对应的包装类.parseXxxx
        int i = Integer.parseInt("1");
        boolean b = Boolean.parseBoolean("true");
        //NumberFormatException - 下面的写法是错误的
        //double d = Double.parseDouble("xiaolongge");
        System.out.println(i + " " + b);


        //String ->包装类 : 通过包装类的构造器
        Integer a = new Integer("1");
        Boolean bo = new Boolean("true");
        System.out.println(a + " " + bo);
    }
}
相关推荐
学习使我变快乐2 分钟前
C++:用类实现链表,队列,栈
开发语言·c++·链表
茶馆大橘4 分钟前
【黑马点评】已解决java.lang.NullPointerException异常
java·开发语言
星辰@Sea8 分钟前
服务注册中心对比及使用场景分析
java·云原生
lmy_t8 分钟前
C++之第十二课
开发语言·c++
马剑威(威哥爱编程)11 分钟前
除了递归算法,要如何优化实现文件搜索功能
java·开发语言·算法·递归算法·威哥爱编程·memoization
bug菌¹13 分钟前
滚雪球学SpringCloud[4.1讲]: Spring Cloud Gateway详解
java·spring cloud·微服务
我码玄黄22 分钟前
THREE.js:网页上的3D世界构建者
开发语言·javascript·3d
MuseLss33 分钟前
HashMap高频面试知识点
java·开发语言·哈希算法
tyler-泰勒35 分钟前
初始c++:入门基础(完结)
java·开发语言·c++
憨憨小白40 分钟前
函数的高级应用
开发语言·python·青少年编程·少儿编程