目标

1)包装类的作用,

2)掌握包装类的自动装箱和自动拆箱操作。

3)掌握包装类的转换操作。

具体内容

一切皆对象,八种基本数据类型不是对象。

把Int包装成一个类,这样的一个类就可以以对象的形式操作基本数据类型。

包装类

这八种包装类所继承的父类不全都相同。

1)Integer ,Byte,Float,Double,Short,Long都属于Number类的子类,Number类本身提供了一系列的返回

以上六种基本数据类型的操作。

2)Character属于Object子类。

3)Boolean属于Object子类。

Number类的作用

那么Number类是一个抽象类,主要是将数字包装类中内容变成基本数据类型。

主要操作方法如下:

以Integer和Float为例:

装箱及拆箱

1)将基本数据类型变成包装类称为装箱。

2)将包装类的类型变为基本数据类型称为拆箱。

public class WrapperDemo01{public static void main(String args[]){int x = 30 ;        // 基本数据类型Integer i = new Integer(x) ;    // 装箱:将基本数据类型变为包装类int temp = i.intValue()    ;// 拆箱:将一个包装类变为基本数据类型}
};

下面再以小数为例:

public class WrapperDemo02{public static void main(String args[]){float f = 30.3f ;        // 基本数据类型Float x = new Float(f) ;    // 装箱:将基本数据类型变为包装类float y = x.floatValue()    ;// 拆箱:将一个包装类变为基本数据类型}
};

在JDK1.5之前,对于程序本身来说,包装类不能直接进行“+,-,*,/,++,--”等操作,因为是一个类,

自动装箱和自动拆箱也就是,可以自动由int-->Integer类型转变,而自动拆箱就是自动由Integer-->int转变

public class WrapperDemo03{public static void main(String args[]){Integer i = 30 ;    // 自动装箱成IntegerFloat f = 30.3f ;    // 自动装箱成Floatint x = i ;            // 自动拆箱为intfloat y = f ;        // 自动拆箱为float}
};

在包装类中还有一个最大的特点,

将字符串变为指定的数据类型。

如:讲一个全由数字组成的字符串变为一个int或者float类型的数据。

在Integer和Float类中分别提供了以下两种方法:

1)Integer类(字符串转int类型):public static int parseInt(String s);

2)Float类(字符串转float类型):public static float parseFloat(String s);

static关键字修饰的方法,直接由类调用

注意:这里的String s,必须由数字组成。

public class WrapperDemo04{public static void main(String args[]){String str1 = "30" ;    // 由数字组成的字符串String str2 = "30.3" ;    // 由数字组成的字符串int x = Integer.parseInt(str1) ;    // 将字符串变为int型float f = Float.parseFloat(str2) ;    // 将字符串变为int型System.out.println("整数乘方:" + x + " * " + x + " = " + (x * x)) ;System.out.println("小数乘方:" + f + " * " + f + " = " + (f * f)) ;}
};
运行结果:
整数乘方:30 * 30 = 900
小数乘方:30.3 * 30.3 = 918.08997

从初始化参数获取字符串:

public class WrapperDemo05{public static void main(String args[]){int x = Integer.parseInt(args[0]) ;    // 将字符串变为int型float f = Float.parseFloat(args[1]) ;    // 将字符串变为int型System.out.println("整数乘方:" + x + " * " + x + " = " + (x * x)) ;System.out.println("小数乘方:" + f + " * " + f + " = " + (f * f)) ;}
};

总结

1)java中有8种基本数据类型的包装类,可以将基本数据类型以类的形式操作。

2)基本数据类型变为包装类的过程,称为装箱,将包装类变为基本数据类型的过程称为拆箱。

3)在JDK1.5之后,提供了自动装箱和自动拆箱功能。

4)使用包装类,可以将字符串实现基本数据类型的转换操作。

包装类,包装类的自动装箱和自动拆箱相关推荐

  1. Java 进阶——自动装箱和自动拆箱

    1.什么是自动装箱拆箱 基本数据类型的自动装箱(autoboxing).拆箱(unboxing)是自J2SE 5.0开始提供的功能. 一般我们要创建一个类的对象实例的时候,我们会这样: Class a ...

  2. java 自动装箱自动拆箱_自动装箱和自动拆箱

    自动装箱和自动拆箱 Java 提供了 8 种基本数据类型,每种数据类型都有其对应的包装类型,包装类是面向对象的类,是一种高级的数据类型,可以进行一些比较复杂的操作,它们是引用类型而不再基本类型了. 基 ...

  3. 第三次学JAVA再学不好就吃翔(part64)--自动装箱和自动拆箱

    学习笔记,仅供参考 自动装箱和自动拆箱 装箱:把基本类型转换为包装类类型 int x = 100; Integer i1 = new Integer(x); 拆箱:把包装类类型转换为基本类型 int ...

  4. 深入理解自动装箱和自动拆箱

    一.什么是自动装箱.自动拆箱 此机制开始于jdk 1.5 java中有8种基本类型,对应8种基本类型有8个包装类. 整形 实型 布尔型 字符型 long/int/short/byte float/do ...

  5. 装箱和拆箱,自动装箱和自动拆箱

    装箱和拆箱,自动装箱和自动拆箱 以Integer的创建为例. 装箱和拆箱 装箱:把基本数据类型转换成包装类对象(int->Integer) Integer num1=new Integer(17 ...

  6. 可能你不知道的,关于自动装箱和自动拆箱

    包装类 我们知道,Java中包含了8种基本数据类型: 整数类型:byte.short.int.long 字符类型:char 浮点类型:float.double 布尔类型:boolean 这8种基本数据 ...

  7. 【自动装箱】Java自动装箱、自动拆箱

    Java中集合只允许存储引用数据类型,那么 int char double等基础数据类型,如何存储在集合里呢?Java在JDK1.5版本以后推出了自动装箱.自动拆箱操作,那么什么是自动装箱呢,下面我们 ...

  8. java中为什么自动装箱拆箱_Java自动装箱和自动拆箱的理解

    Java自动装箱和自动拆箱的理解 1.代码 public class AutoBoxing { public static void main(String[] args) { Integer a = ...

  9. 关于Integer的自动装箱与自动拆箱

    关于Integer的自动装箱与自动拆箱 自动装箱 Integer x1 = 36和Integer n1 = new Integer(36)有什么区别?我们尝试运行下面代码看看会是什么结果: publi ...

最新文章

  1. linux中html的图片显示不出来,如何在HTML中显示原始的rgb图像
  2. oracle1537,dataguard 出现ORA-16136错误
  3. linux怎么调用静态库,Linux 静态库的创建和使用
  4. html扇形调节角度,CSS如何实现任意角度的扇形(代码示例)
  5. Alain 菜单权限控制
  6. IT管理系统:让酒店更便宜
  7. JLink驱动设备管理器中显示黄色感叹号
  8. quick cocos2dx 组件
  9. c语言程序设计判断是否是素数,C语言编程输入一个数判断是否为素数(质数)...
  10. 英文期刊催稿信模板_sci,催稿信,模板.docx
  11. android设置管理员权限设置,android 获取超级管理员权限,进行锁屏、恢复出厂设置...
  12. SQL经典短小代码收集
  13. Response响应详解
  14. python 中文转带音调的拼音
  15. android德地图点聚合,点聚合-点标记-示例中心-JS API 示例 | 高德地图API
  16. 详解磁盘配额的设置方法
  17. 计算机软技能,在个人简历中有哪些软技能可以写?
  18. 购房流程 - 新浪网
  19. 【蓝桥杯】第十四届模拟赛第一期及第二期填空汇总
  20. Quick-Cocos2dx升级LuaJit版本

热门文章

  1. win10用户名改了以后,C盘中用户文件夹下的以用户名命名的文件夹名字没有变化?还是之前的用户
  2. 计算机论文怎样投稿sci,计算机集成论文怎么投稿sci期刊
  3. AppScan系列——web安全测试---AppScan扫描工具
  4. 混乱与整齐-布局-PCB系列教程1-12
  5. 小红书最新用户量数据_近半年DAU峰回路转 重新审视小红书用户价值
  6. 【金猿产品展】云简业财——满足中大型企业个性化需求的报销、费控、预算、业财一体化管理平台...
  7. 云计算、大数据、人工智能时代,为什么不能错过Linux?
  8. python 100days github_GitHub - 596861134/Python-100-Days: Python - 100天从新手到大师
  9. 解剖学坐标体系(LPS , RAS和LAS)
  10. win10尘埃4点击开始游戏自动关闭没反应|dirt4.exe进程消失的解决方法