Java进阶学习笔记26——包装类

包装类:

包装类就是把基本类型的数据包装成对象。

看下API文档:

deprecated:极力反对、不赞成的意思。

marked for removal:标识为去除的意思。

自动装箱:基本数据类型可以自动转换成包装类。

自动拆箱:包装类型可以自动转换成基本数据类型。

包装类提供了很多常见的方法给我们:

java 复制代码
package cn.ensource.d15_integer;

import cn.ensource.d1_inner_class1.Outer;

import java.lang.reflect.Array;
import java.util.ArrayList;

public class Test {
    public static void main(String[] args) {
        // 目标:掌握包装类的使用
//        Integer a1 = new Integer(12);

        Integer a2 = Integer.valueOf(12);
        System.out.println(a2);

        // 自动装箱机制:自动把基本数据类型的数据转成对象
        Integer a3 = 18;
        System.out.println(a3);

        // 自动拆箱,可以自动把包装类的对象转换成对应的基本数据类型
        int a4 = a3;
        System.out.println(a4);

        // 泛型和集合不支持基本数据类型,只能支持引用数据类型
//        ArrayList<int> list = new ArrayList<>();
        // 可见泛型是不支持数据类型的。

        ArrayList<Integer> list = new ArrayList<>();
        list.add(12);     //自动装箱,再放到ArrayList集合中
        list.add(13);

        int res = list.get(1);   // 自动拆箱,可见非常灵活
        System.out.println(res);

        System.out.println("----------------------");
        // 1. 把基本类型的数据转换成字符串
        Integer a = 23;
        String rs1 = Integer.toString(a);
        System.out.println(rs1 + 1);

        String rs2 = a.toString();
        System.out.println(rs2 + 1);

        // 2. 把字符串类型的数值转换成对应的基本类型
        String agestr = "29";
//        int age = Integer.parseInt(agestr);
        int age = Integer.valueOf(agestr);
        System.out.println(age + 1);

        String scoreStr = "99.5";
//        double score = Double.parseDouble(scoreStr);
        double score = Double.valueOf(scoreStr);
        System.out.println(score + 0.5);
    }
}
相关推荐
程序媛徐师姐21 分钟前
Java基于SpringBoot的茶叶商城系统,附源码+文档说明
java·spring boot·java springboot·茶叶商城系统·java茶叶商城系统·茶叶·java茶叶商城
爱读源码的大都督1 小时前
为什么有了HTTP,还需要gPRC?
java·后端·架构
Lucky_Turtle1 小时前
【Java Xml】Apache Commons Digester3解析
xml·java·apache
聪明的笨猪猪1 小时前
Java Redis “缓存设计”面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试
FIavor.2 小时前
我发送给Apifox是http://localhost:9002/goods/getByUserName?name=张三 为什么会是500哪里错了?
java·服务器·网络协议·http
ID_180079054732 小时前
京东获取整站实时商品详情数据|商品标题|数据分析提取教程
java·开发语言
微露清风2 小时前
系统性学习C++-第五讲-内存管理
java·c++·学习
计算机毕业设计木哥2 小时前
计算机毕业设计选题推荐:基于SpringBoot和Vue的快递物流仓库管理系统【源码+文档+调试】
java·vue.js·spring boot·后端·课程设计
235162 小时前
【LeetCode】146. LRU 缓存
java·后端·算法·leetcode·链表·缓存·职场和发展
聪明的笨猪猪2 小时前
Java Redis “运维”面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试