|NO.Z.00006|——————————|BigDataEnd|——|Java&核心类库.V06|——|Java.v06|Integer类概念|构造方式|装箱拆箱机制|常用方法|

一、[Integer类概念构造方式]——[Integer类的装箱和拆箱机制]——[Integer类的常用方法]
### --- Integer类的概述

~~~     # 基本概念
~~~     ——>        java.lang.Integer类内部包装了一个int类型的变量作为成员变量,
~~~     ——>        主要用于实现对int类型的包装并提供int类型到String类之间的转换等方法。
二、常用的常量
常量类型和名称 功能介绍
public static final int MAX_VALUE 表示int类型可以描述的最大值,即2^31-1
public static final int MIN_VALUE 表示int类型可以描述的最小值,即-2^31
public static final int SIZE 表示int类型采用二进制补码形式的位数
public static final int BYTES 表示int类型所占的字节个数
public static final Class TYPE 表示int类型的Class实例
三、常用的方法
方法声明 功能介绍
Integer(int value) 根据参数指定的整数来构造对象(已过时)
Integer(String s) 根据参数指定的字符串来构造对象 (已过时)
int intValue()  获取调用对象中的整数值并返回
static Integer valueOf(int i) 根据参数指定整数值得到Integer类型对象
boolean equals(Object obj)  比较调用对象与参数指定的对象是否相等
String toString() 返回描述调用对象数值的字符串形式
static int parseInt(String s) 将字符串类型转换为int类型并返回
static String toString(int i)  获取参数指定整数的十进制字符串形式
static String toBinaryString(int i)  获取参数指定整数的二进制字符串形式
static String toHexString(int i) 获取参数指定整数的十六进制字符串形式
static String toOctalString(int i)  获取参数指定整数的八进制字符串形式
四、装箱和拆箱的概念
### --- 装箱和拆箱的概念

~~~     ——>        在Java5发布之前使用包装类对象进行运算时,
~~~     ——>        需要较为繁琐的“拆箱”和“装箱”操作;
~~~     ——>        即运算前先将包装类对象拆分为基本类型数据,运算后再将结果封装成包装类对象。
~~~     ——>        从Java5开始增加了自动拆箱和自动装箱的功能。
五、自动装箱池
### --- 自动装箱池

~~~     ——>        在Integer类的内部提供了自动装箱池技术,
~~~     ——>        将-128到127之间的整数已经装箱完毕,当程序中使用该范围之间的整数时,
~~~     ——>        无需装箱直接取用自动装箱池中的对象即可,从而提高效率。
六、编程代码
package com.yanqi.task11;

public class IntegerTest {

    public static void main(String[] args) {

        // 1.打印Integer类中常用的常量数值
        System.out.println("最大值是:" + Integer.MAX_VALUE); // 2^31-1
        System.out.println("最小值是:" + Integer.MIN_VALUE); // -2^31
        System.out.println("所表示二进制的位数是:" + Integer.SIZE); // 32
        System.out.println("所占字节的个数是:" + Integer.BYTES); // 4
        System.out.println("对应int类型的Class实例是:" + Integer.TYPE); // int

        System.out.println("------------------------------------------------------");
        // 2.使用构造方法来构造Integer类型的对象并打印
        //Integer it1 = new Integer(123);
        //System.out.println("it1 = " + it1); // 自动调用toString方法   123
        //Integer it2 = new Integer("456");
        //System.out.println("it2 = " + it2); // 456
        // 上述方法已过时,建议使用valueOf方法取代之,相当于从int类型到Integer类型的转换,叫做装箱
        Integer it3 = Integer.valueOf(123);
        System.out.println("it3 = " + it3); // 123
        // 相当于从String类型到Integer类型的转换
        Integer it4 = Integer.valueOf("456");
        System.out.println("it4 = " + it4); // 456   自动调用toString方法得到的是String类型
        // 获取调用对象中的整数数值,相当于从Integer类型到int类型的转换,叫做拆箱
        int ia = it4.intValue();
        System.out.println("获取到的整数数据是:" + ia); // 456  得到的是int类型

        System.out.println("------------------------------------------------------");
        // 3.从Java5开始增加了自动装箱和自动拆箱的机制
        Integer it5 = 100;  // 直接通过赋值运算符实现自动装箱
        int ib = it5;       // 直接通过赋值运算符实现自动拆箱

        System.out.println("------------------------------------------------------");
        // 4.装箱和拆箱的笔试考点
        Integer it6 = 127; //128;
        Integer it7 = 127; //128;
        Integer it8 = new Integer(127); //new Integer(128);
        Integer it9 = new Integer(127); //new Integer(128);
        System.out.println(it6 == it7);      // 比较地址  false  true  地址一样
        System.out.println(it6.equals(it7)); // 比较内容  true
        System.out.println(it8 == it9);      // 比较地址  false
        System.out.println(it8.equals(it9)); // 比较内容  true

        System.out.println("------------------------------------------------------");
        // 5.实现静态方法的调用
        int ic = Integer.parseInt("200");
        //int ic = Integer.parseInt("200a"); // 编译ok,运行发生NumberFormatException数字格式异常,因为有字母
        System.out.println("字符串转换为整数的结果是:" + ic); // 200
        System.out.println("根据参数指定的整数获取对应的十进制字符串是:" + Integer.toString(200));
        System.out.println("根据参数指定的整数获取对应的二进制字符串是:" + Integer.toBinaryString(200));
        System.out.println("根据参数指定的整数获取对应的十六进制字符串是:" + Integer.toHexString(200));
        System.out.println("根据参数指定的整数获取对应的八进制字符串是:" + Integer.toOctalString(200));
    }
}
七、编译打印
D:\JAVA\jdk-11.0.2\bin\java.exe "-javaagent:D:\IntelliJIDEA\IntelliJ IDEA 2019.3.3\lib\idea_rt.jar=49757:D:\IntelliJIDEA\IntelliJ IDEA 2019.3.3\bin" -Dfile.encoding=UTF-8 -classpath E:\NO.Z.10000——javaproject\NO.H.00001.javase\javase\out\production\javase com.yanqi.task11.IntegerTest
最大值是:2147483647
最小值是:-2147483648
所表示二进制的位数是:32
所占字节的个数是:4
对应int类型的Class实例是:int
------------------------------------------------------
it3 = 123
it4 = 456
获取到的整数数据是:456
------------------------------------------------------
------------------------------------------------------
true
true
false
true
------------------------------------------------------
字符串转换为整数的结果是:200
根据参数指定的整数获取对应的十进制字符串是:200
根据参数指定的整数获取对应的二进制字符串是:11001000
根据参数指定的整数获取对应的十六进制字符串是:c8
根据参数指定的整数获取对应的八进制字符串是:310

Process finished with exit code 0

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

posted on   yanqi_vip  阅读(23)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示