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);
    }
}
相关推荐
张np2 分钟前
java基础-ArrayList
java·开发语言
Swizard3 分钟前
别让 AI 假装在工作:Android "Vibe Coding" 的生存指南
android·java·vibe coding
BBB努力学习程序设计10 分钟前
Java集合框架:管理数据的"超级工具箱"
java
库库林_沙琪马26 分钟前
1、Hi~ SpringBoot
java·spring boot·后端
不会编程的小寒26 分钟前
C / C++ 面试题
java·开发语言
BBB努力学习程序设计29 分钟前
Java输入输出:让程序能与世界“对话”
java
电饭叔31 分钟前
《python语言程序设计》2018版--第8章14题利用字符串输入作为一个信用卡号之一(Luhn算法解释)
android·java·python
阿宁又菜又爱玩32 分钟前
Web后端开发入门
java·spring boot·后端·web
Z3r4y34 分钟前
【代码审计】JeecgBoot-3.5.0 四处安全问题分析
java·web安全·代码审计·jeecg-boot
wangmengxxw36 分钟前
微服务-服务配置
java·运维·微服务·云计算·服务配置