我是靠谱客的博主 雪白战斗机,最近开发中收集的这篇文章主要介绍Java中常见包装类型Integer、BigDecimal等特点说明,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、包装类型和基本类型的区别

1、包装类型没有默认值都是 null,而基本类型有默认值
2、一般所有的DTO中属性必须全部使用包装类型,局部变量使用基本类型
3、一般接口全局统一响应的状态码属性,一般使用 Integer 类型
4、包装类型和基本类型用 == 比较会做拆箱操作,所以 Integer == int 可以正常比较

二、 以 Integer 为例,验证一下 Integer 类型的特点

说明:
Integer 类型变量在(-128到127)范围内,用 == 可以正确比较,但如果越过这个范围之外用 == 无法正确比较,必须使用 equals 才可以正确比较

验证:

1、Integer正常范围内 == 比较

        //正常范围内 == 比较
        Integer a = -128;
        Integer b = -128;
        System.out.println("Integer最小范围使用==比较:" + (b==a));
        Integer c = 127;
        Integer d = 127;
        System.out.println("Integer最大范围使用==比较:" + (c==d));

输出:

2、正常范围内 equals 比较

        //正常范围内 equals 比较
        Integer a = -128;
        Integer b = -128;
        System.out.println("Integer最小范围使用equals比较:" + (a.equals(b)));
        Integer c = 127;
        Integer d = 127;
        System.out.println("Integer最大范围使用equals比较:" + (c.equals(d)));

输出:

3、越过正常范围 == 比较

        //越过正常范围 == 比较
        Integer a = -129;
        Integer b = -129;
        System.out.println("Integer越过最小范围使用==比较:" + (a==b));
        Integer c = 128;
        Integer d = 128;
        System.out.println("Integer越过最大范围使用==比较:" + (c==d));

输出:

4、 越过正常范围 equals 比较

        //越过正常范围 equals 比较
        Integer a = -129;
        Integer b = -129;
        System.out.println("Integer越过最小范围使用equals比较:" + (a.equals(b)));
        Integer c = 128;
        Integer d = 128;
        System.out.println("Integer越过最大范围使用equals比较:" + (c.equals(d)));

 输出:

三、总结

1、Integer 类型变量使用 == 进行比较的范围是 -128到127 
2、Integer 类型变量使用 equals 进行比较没有范围限制
3、Integer 类型变量和 int 类型比较也没有范围限制

最后

以上就是雪白战斗机为你收集整理的Java中常见包装类型Integer、BigDecimal等特点说明的全部内容,希望文章能够帮你解决Java中常见包装类型Integer、BigDecimal等特点说明所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(75)

评论列表共有 0 条评论

立即
投稿
返回
顶部