文章目录
- 📖前言:
- 🎀包装类概念:
- 🎀包装类分类:
- 🎀包装类integer介绍:
- 🎇自动装箱和自动拆箱问题
- 【⚠注意面试常考点】
- 🎇Integer常用方法:
📖前言:
本篇博客以Integer包装类为例(其他包装类可类推)了解其常用方法
🎀包装类概念:
🎇java语言包装类是依据8种基本数据类型设计,为他们–量身定做的类。每个包装类中都封装了相应基本数据类型的值和一系列对此基本数据类型操作的方法,供开发人员使用。
(🎇设计原因
:java语言中的基本数据类型其实是从C语言那边引申过来的,基本数据类型是基于面向过程的思想而设计出来的。由于基本数据类型只能表示具体数值,无法创建对象,无法调用一些经常使用的方法,故使用的时候很不方便。为此java语言设计师基于java面向对象的思想,为基本数据类型 一 一 设计出一个可以代表此基本数据类型又能提供常用方法的一个类---->包装类)
🎀包装类分类:
🎀包装类integer介绍:
作为int的包装类,内部封装了int的实际值和一系列对此基本数据类型操作的方法。
🎇自动装箱和自动拆箱问题
【⚠注意面试常考点】
🦀需要注意的是:自动装箱valueOf()方法底层封装了一个字节大小缓冲数组来存储(来存储范围-128~127的数值)。如果处于此范围的值被自动装箱,会默认引用缓存数组对应元素的地址。如果不处于此范围的值被自动装箱,则会 new 一个新对象,引用新对象在堆内存里的地址
。
🎇Integer常用方法:
构造方法 | 方法内容介绍 |
---|---|
Integer ( int a ) | 📖传入一个整数a 作为Integer实际值 |
Integer ( String a ) | 📖传入一个字符串a,若是数字字符串,就转化为数字;若其中包含非数字字符,会报NumberFormatException-数字格式化异常 |
比较方法 | 方法内容介绍 |
static int compareTo ( Integer a ) | 📖比较两对象大小。 底层为 对象1 - 对象2;【他们大小关系<、=、>】分别对应返回值【-1,0,1】 |
boolean equals ( Object ) | 📖已经重写过Object类中此方法,比较数值是否相等,但是底层为== |
int max ( int a , int b ) | 📖比较出a,b最大值 |
int min ( int a , int b ) | 📖比较出a,b最小值 |
转换方法 | 方法内容介绍 |
static String toBinaryString ( int i ) | 📖将Integer实际值a转化为二进制字符串 |
static String toHexString ( int i ) | 📖将Integer实际值a转化为八进制字符串 |
static String toOctalString ( int i ) | 📖将Integer实际值a转化为十六进制字符串 |
int intValue () | 📖取出Integer实际值a–拆箱 |
static int parseInt ( String s ) | 📖将数字字符串转化成数字 |
String toString () | 📖调用父类方法,打印对象地址 |
static Integer valueOf ( int i ) | 📖将int实际值a包装成类–装箱 |
static Integer valueOf ( String s ) | 📖将数字字符串实际值a包装成类–装箱 |