Java 包装类
创始人
2024-11-15 13:37:43
0

目录

包装类

包装类的用处

基本数据类型和对应的包装类 

包装类的使用

装箱和拆箱

 自动装箱和自动拆箱

类内部常用方法


包装类

包装类是对应着各种基本数据类型进行包装后产生的引用数据类型 ,是基本数据类型的plus版本。

为什么要设计包装类

因为 Java是一个面向对象的编程语言,但是Java中的八种基本数据类型却是不面向对象的,为了使用方便和解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八种基本数据类型对应的类统称为包装类(Wrapper Class),包装类均位于java.lang包。

包装类的用处

对于包装类说,用途主要包含两种:

  1. 作为基本数据类型对应的类 类型存在,方便涉及到对象的操作。
  2. 包含每种基本数据类型的相关属性如最大值、最小值等,以及相关的操作方法。

基本数据类型和对应的包装类 

基本数据类型包装类
byteByte
shortShort
intInteger
longLong
floatFloat
doubleDouble
charCharacter
booleanBoolean
除了 Integer 和 Character, 其余基本类型的包装类都是首字母大写。

包装类的使用

装箱和拆箱

装箱:建立包装类对象,将对应基本数据类型放入对象属性中

int i=10; Integer i1=Integer.valueOf(i); Integer i2=new Integer(100);

拆箱:将包装类对象的属性值取出放入对应基本数据类型中

int j=i1.intValue(); 

 自动装箱和自动拆箱

int i = 10; Integer ii = i; // 自动装箱 Integer ij = (Integer)i; // 自动装箱 int j = ii; // 自动拆箱 int k = (int)ii; // 自动拆箱

类内部常用方法

包装类作为类,有非常多的方法。下面以int-Integer为例,

        //parseInt方法: 数字字符串类型转成int类型         String s="123";         int i = Integer.parseInt(s);         System.out.println("字符类型转成整型:"+i);         //toString方法:int类型转成数字字符串类型         int ii=123;         String s2 = Integer.toString(ii);         System.out.println("int类型转成数字字符串类型:"+s2);

细说valueOf ( ) 源码分析

public static Integer valueOf(int i) {      assert IntegerCache.high>= 127;      if (i >= IntegerCache.low&& i <= IntegerCache.high)      return IntegerCache.cache[i+ (-IntegerCache.low)];      return new Integer(i);  }

注意方法体中,在返回之前对 int 作判断,IntegerCache.low=-128,IntegerCache.high=127.

127 >=  i >= -128,直接返回数组下标为i-(-128)的值,而不在这个范围时,返回新的对象

来两道常见面试题练练手吧

1、Java中 int 和 Intrger 的区别

  1. int 是基本类型,直接存数值;而integer引用数据类型。
  2. Int的声明不需要实例化,且变量声明后的初始值为0;Integer的是一个类,初始值为null,需要进行实例化,才能对变量数据进行处理。
  3. Integer类是int的包装类,实际开发中Integer被看成一个对象,可以进行数据转换等操作。

2、代码输出结果是? 

Integer a=100; Integer b=100; System.out.println(a==b);  Integer m=200; Integer n=200; System.out.println(m==n); 

答案是   true    false 

相关内容

热门资讯

微信买链接炸金花房卡/欢乐游大... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:55051770许多玩家在游戏中会购买房卡来享...
微信群开牛牛房卡/冷酷大厅牛牛... 牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:8488009许多玩家在游戏中会购买房卡来享受更...
微信群开炸金花房卡在哪购买/微... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:33903369许多玩家在游戏中会购买房卡来享...
微信群炸金花房卡到哪里买/斗牛... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:55051770许多玩家在游戏中会购买房卡来享...
拼三张房卡链接去哪里买/新人皇... 拼三张是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:8488009许多玩家在游戏中会购买房卡来享受...
微信上玩炸金花房卡怎么买/微信... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:33903369许多玩家在游戏中会购买房卡来享...
微信牛牛房卡怎样开/新海狮大厅... 牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:55051770许多玩家在游戏中会购买房卡来享受...
微信炸金花链接在哪买房卡/微信... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:8488009许多玩家在游戏中会购买房卡来享受...
在哪里买拼三张微信房卡/新皇豪... 拼三张是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:33903369许多玩家在游戏中会购买房卡来享...
炸金花如何开好友房间房卡/美猴... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:55051770许多玩家在游戏中会购买房卡来享...
炸金花房卡链接在哪弄的/新九五... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:8488009许多玩家在游戏中会购买房卡来享受...
微信买链接拼三张房卡/橘子大厅... 拼三张是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:33903369许多玩家在游戏中会购买房卡来享...
微信怎样开炸金房间卡/新猴王微... 牌九是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:55051770许多玩家在游戏中会购买房卡来享受...
斗牛从哪里买房卡/新道游大厅牛... 斗牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:8488009许多玩家在游戏中会购买房卡来享受更...
微信链接炸金花房卡在哪买的/斗... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:33903369许多玩家在游戏中会购买房卡来享...
微信牛牛房卡专卖店联系方式/新... 牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:55051770许多玩家在游戏中会购买房卡来享受...
拼三张好友房卡在哪里买/新大海... 拼三张是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:8488009许多玩家在游戏中会购买房卡来享受...
微信牛牛房间卡在哪买的/老夫子... 斗牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:33903369许多玩家在游戏中会购买房卡来享受...
微信牛牛房卡如何购买/新永和大... 牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:55051770许多玩家在游戏中会购买房卡来享受...
炸金花房间如何购买房卡/微信里... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:8488009许多玩家在游戏中会购买房卡来享受...