Java基础之包装类

 更新时间:2021年05月10日 15:56:20   作者:qq_45671732  
这篇文章主要介绍了Java基础之包装类,文中有非常详细的代码示例及基础知识详解,对正在学习java基础的小伙伴们有很大的帮助哟,需要的朋友可以参考下

一、java的包装类

  • 什么是包装类

对于基本数据类型来讲,其实就是一个数字,但是当给基本数据类型添加一些属性 方法和构造器,将基本数据类型对应进行一个封装,就产生了一个新的类,这个类被称为是包装类。

那么基本数据类型在前面中讲过有byte short int long float double char boolean,也就是将这些进行封装,基本数据类型和包装类的对应关系是怎样的呢?

基本数据类型 对应的包装类
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Char
boolean Boolean

二、Integer包装类

2.1 Integer类的基本介绍

Integer包装类,是通过int基本数据类型进行封装得到的,可以通过查看java的API说明文档得到它的基本信息:

在这里插入图片描述

Integer包装类在java.lang中,这将意味着可以直接使用,不需要进行导包

在这里插入图片描述

Integer类被final修饰符修饰,那么这个类不可以有子类,不能被继承。

2.2 Integer类的属性

在这里插入图片描述

package cn.zhz.Instance;

public class Test02 {
    public static void main(String[] args) {
        //属性
        System.out.println(Integer.MAX_VALUE);
        System.out.println(Integer.MIN_VALUE);
        //物极必反:超出了Int类型的范围
        System.out.println(Integer.MAX_VALUE + 1);
        System.out.println(Integer.MIN_VALUE - 1);
    }
}

2.3 Integer类的构造器

在这里插入图片描述

package cn.zhz.Instance;

public class Test03 {
    public static void main(String[] args) {
        Integer i1 = new Integer(13);
        System.out.println(i1.toString());
        Integer i2 = new Integer("12");
        System.out.println(i2);
    }
}

三、自动装箱和自动拆箱

package cn.zhz.Instance;

public class Test04 {
    public static void main(String[] args) {
        //自动装箱:int-->Integer
        Integer i = 12;
        System.out.println(i);
        //自动拆箱:Integer-->int
        Integer i2 = new Integer(123);
        int num = i2;
        System.out.println(num);
    }
}

四、Integer包装类的方法

类型 方法 方法的说明 返回值
int compareTo() 比较两个整数对象的数值。 只返回三个值,要么是0 -1 1
boolean equals() 将此对象与指定对象进行比较。 返回true或者是false
int intValue() 以整数形式返回此整数的值。
static int parseInt() 将输入的String类型的数据转换成int类型的数据
String toString() 返回表示此整数值的字符串对象。
package cn.zhz.Instance;

public class Test05 {
    public static void main(String[] args) {
        //compareTo():只返回三个值,要么是0 -1 1
        Integer i1 = new Integer(6);
        Integer i2 = new Integer(12);
        System.out.println(i1.compareTo(i2));//return (x < y) ? -1 ((x == y) ? 0 : 1)
        //equals():Integer是对object中的equals方法进行了重写,比较的是底层封装的那个value的值
        //Integer对象是通过new关键字来创建对象
        Integer i3 = new Integer(12);
        Integer i4 = new Integer(12);
        System.out.println(i3 == i4);//false 因为==比较的是两个对象的地址
        boolean flag = i3.equals(i4);
        System.out.println(flag);
        //Integer对象是通过自动装箱来完成的
        Integer i5 = 12;
        Integer i6 = 12;
        System.out.println(i5.equals(i6));//true
        System.out.println(i5 == i6);
        /*
         * 如果自动装箱在-128~127之间,那么比较的就是具体的数值,否则,比较的就是对象的地址
         * */
        //intvalue():
        Integer i7 = 130;
        int i = i7.intValue();
        System.out.println(i);
        //parseInt(String s):String -->int
        int i8 = Integer.parseInt("12");
        System.out.println(i8);
        //toString():
        Integer i10 = 130;
        System.out.println(i10.toString());
    }
}

到此这篇关于Java基础之包装类的文章就介绍到这了,更多相关java包装类内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • IDEA2021.2配置docker如何将springboot项目打成镜像一键发布部署

    IDEA2021.2配置docker如何将springboot项目打成镜像一键发布部署

    这篇文章主要介绍了IDEA2021.2配置docker如何将springboot项目打成镜像一键发布部署,本文图文实例相结合给大家介绍的非常详细,需要的朋友可以参考下
    2021-09-09
  • Java Atomic类及线程同步新机制原理解析

    Java Atomic类及线程同步新机制原理解析

    这篇文章主要介绍了Java Atomic类及线程同步新机制原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • 详解RestTemplate的三种使用方式

    详解RestTemplate的三种使用方式

    这篇文章主要介绍了详解RestTemplate的三种使用方式,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10
  • 详解Java的Spring框架中bean的定义以及生命周期

    详解Java的Spring框架中bean的定义以及生命周期

    这篇文章主要介绍了Java的Spring框架中bean的定义以及生命周期,bean的实例化是Java web开发中的重要基础,需要的朋友可以参考下
    2015-12-12
  • Java文件选择对话框JFileChooser使用详解

    Java文件选择对话框JFileChooser使用详解

    这篇文章主要介绍了Java文件选择对话框JFileChooser使用详解的相关资料,需要的朋友可以参考下
    2015-07-07
  • 详解Java如何实现图像灰度化

    详解Java如何实现图像灰度化

    这篇文章主要介绍了灰度化的几种方法,以及如何使用Java实现灰度化。同时分析了网上一种常见却并不妥当的Java灰度化实现,以及证明了opencv的灰度化是使用“加权灰度化”法,下面一起来看看。
    2016-08-08
  • Jtable和JTree的写法示例代码

    Jtable和JTree的写法示例代码

    这篇文章主要介绍了Jtable和JTree的基本概念,常用构造方法,以及二者的通用写法,需要的朋友可以了解下。
    2017-09-09
  • Java中Calendar类用法实例详解

    Java中Calendar类用法实例详解

    这篇文章主要给大家介绍了关于Java中Calendar类用法的相关资料,Calendar类是Java.util包中提供的一个抽象类,该类从JDK1.1开始出现,作为Date类的替代方案,Calendar类中包含了对不同国家地区日历的处理,需要的朋友可以参考下
    2023-09-09
  • Java的stream流多个字段排序的实现

    Java的stream流多个字段排序的实现

    本文主要介绍了Java的stream流多个字段排序的实现,主要是两种方法,第一种是固定多个字段排序和第二种动态字段进行排序,具有一定的参考价值,感兴趣的可以了解一下
    2023-10-10
  • java中的日期时间类Date和SimpleDateFormat

    java中的日期时间类Date和SimpleDateFormat

    这篇文章主要介绍了java中的日期时间类Date和SimpleDateFormat,Date类的对象在Java中代表的是当前所在系统的此刻日期时间,说白了就是你计算机上现实的时间,需要的朋友可以参考下
    2023-09-09

最新评论