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);
    }
}
相关推荐
ttwuai3 小时前
Go 后台清空操作日志失败,权限和无 WHERE 删除怎么排查?
开发语言·后端·golang
choumou_M4 小时前
SpringBoot_7:用户资源的上传与修改
java·spring boot·后端
西西弗Sisyphus4 小时前
Qt 在无边框窗口上做一套换肤系统
开发语言·数据库·qt
西西弗Sisyphus4 小时前
Qt 启动 UsageStatistic 插件报错
开发语言·qt
NeoGressAI外贸数字化4 小时前
外贸独立站零询盘排查:从 Google Search Console 到 PageSpeed 的技术实操
开发语言·c++
无小道4 小时前
C/C++——异步编程小记
开发语言·c++·c++11
奇树谦4 小时前
Pimpl 模式(d-pointer)详解:如何解决 C++ 头文件过大、编译依赖和 ABI 兼容问题
开发语言·c++
user_admin_god4 小时前
一体化数据归集接口详细设计说明
java·大数据·spring boot·后端·spring
DevOpenClub4 小时前
Markdown、HTML 和 PPT 如何稳定交付:文档转换任务的幂等发布流程
开发语言·前端·c#·html·powerpoint
程序员夏洛4 小时前
谈谈你了解的最常见的几种设计模式,说说他们的应用场景
开发语言·python·模板方法模式