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);
    }
}
相关推荐
ayt0071 分钟前
Netty AbstractNioChannel源码深度剖析:NIO Channel的抽象实现
java·数据库·网络协议·安全·nio
Gofarlic_OMS2 分钟前
装备制造企业Fluent许可证成本分点典型案例
java·大数据·开发语言·人工智能·自动化·制造
码王吴彦祖11 分钟前
顶象 AC 纯算法迁移实战:从补环境到纯算的完整拆解
java·前端·算法
开心码农1号1 小时前
Java rabbitMQ如何发送、消费消息、全套可靠方案
java·rabbitmq·java-rabbitmq
蜡台1 小时前
JetBrains IDEA 安装 卸载相关总结
java·ide·intellij-idea·注册码
WJLSH1231 小时前
TomCat
java·tomcat
戮戮2 小时前
Spring Cloud Gateway 零拷贝参数校验:一种高性能网关架构实践
java·网络·架构·gateway
alengan2 小时前
cocos自动编译-Android自动出apk包
java·eclipse
漫霂2 小时前
二叉树的统一迭代遍历
java·算法
文静小土豆2 小时前
K8s 滚动更新在 Java 应用中的实践与优化
java·容器·kubernetes