Java是一种面向对象的编程语言,他提供了8种基本数据类型。但是,这8种基本数据类型并不符合面向对象的编程机制,因为基本数据类型并不具有对象所具有的属性,方法,构造方法等特征。Java之所以提供8中基本数据类型主要是为了保持和c等其他语言的延续性。

Java提供了对8种基本数据类型的“包装”,称之为包装类。包装类符合对象的特征,对基本数据类型进行了封装,提供了一些必要的属性和方法,满足了面向对象编程的要求。每种基本数据类型都有一个包装类与之相对应。

包装类属于对象范畴,而基本数据类型只是表征数值的数据类型,例如,Integer和int是个完全不同的类型,Integer是引用数据类型,int是基本数据类型,Integer作为对象类型具有属性和方法,而int类型则没有。

使用包装类需要进行实例化操作,语法如下:

包装类 类变量=new 包装类(初始化值);

基本数据类型数值和包装类对象之间可以进行相互转换

举一个int与Integer的实例

第6行:由于Interger类型是一个包装类,属于对象范畴,即需要在使用他是实例化其对象。图中横线表示此方法虽然可以使用,但是已经废弃(建议使用自动拆箱与装箱)。

第8行:需要获取其值得时候,可以使用他的xxxValue()方法来取值,如intValue()方法来获取int值。

可以看到控制台输出了相应的数值。相应的,包装类与基本数据类型也可以相互转化。

自动装箱与自动拆箱

自从jdk5.0以后,java提供了自动装箱和自动拆箱的功能。即基本数据类型与包装类之间相互转换的一种简化机制。

自动装箱能够使一个基本数据类型数值直接赋给对应的包装类实例变量,或者转换为Object类实例变量;自动拆箱与之相反,允许一个包装类实例变量直接赋给一个对应的基本数据类型变量。

举个栗子:

包装类转换

包装类主要提供了基本数据类型数值和字符串之间的转换,除了Character类之外的其他包装类都提供了一个parseXxx(String s)的方法,用于将特定字符串转换成基本数据类型的数值。

String类也提供了valueOf()方法把一个基本数据类型的数值转换为字符串。

直接上代码:

代码中我们先将字符串a1用Integer类的parseInt()方法装换为int类型。再使用String类的valueOf()方法将a2转换为String类型。然后在控制台输出。

java包装类转换_Java从入门到入土(38)包装类转换相关推荐

  1. java jdk安装_Java从入门到入土第一课—JDK安装及环境配置

    安装步骤如下: 下载jdk 在浏览器输入:https://www.oracle.com/technetwork/java/javase/downloads 选择想要下载的jdk版本,以Java SE ...

  2. java字符流和字节流转换_java中字符流和字节流的转换

    看到InputStreamReader和OutputStreamWriter的一些说法, 说InputStreamReader是将字节流转换成字符流,而OutputStreamWriter则相反,是将 ...

  3. java从入门到入土图_Java从入门到入土day08

    好家伙,这个作者竟然妄图一天就把面向对象的两个特征说了.他可真是自不量力啊,作者心中OS:学习真累,赶快写完去打游戏真香. 正文分割线 一.抽象 1.抽象的定义:抽象,字面意思.很抽象,很多人都不懂的 ...

  4. java main生命周期_Java从入门到入土(62)线程的生命周期

    线程是程序内部的一个顺序控制流,他具有一个特定的生命周期.在一个线程的生命周期中,他总是处于某一种状态中.线程的状态表示了线程正在进行的活动以及在这段时间内线程能完成的任务. 线程的生命周期包括五个状 ...

  5. java写方法用来调用_Java从入门到入土(79)lambda表达式和方法引用

    lambda表达式是Java8引入的新功能.lambda表达式以字面量的形式把少量代码直接写在程序中,从而让 Java 编程更符合函数式风格(Java 实质上是面向对象语言.不过,引入lambda 表 ...

  6. java从入门到入土_Java从入门到入土100天,第四天

    第四天,String的常用方法 首先,先说明一个重点,在大部分语言中,String 都是不可变的,改变的都是建一个新的字符串然后将修改结束的字符串存到新的字符串中. 然后再提一个区别:String.S ...

  7. java从基础到入门_Java从入门到入土(30)继承基础

    面向对象的优势在于代码的复用,继承是实现代码复用的重要手段.Java的继承采用单继承机制,即每个子类只能继承一个父类.被继承的类称为父类,而实现继承的类称为子类.通过继承,子类继承父类的非私有属性与方 ...

  8. java语言编写进制转换_Java 3种方法实现进制转换

    由其他进制转换为十进制比较简单,下面着重谈一谈十进制如何化为其他进制. 1.使用Java带有的方法Integer,最简单粗暴了,代码如下 //使用java提供的方法 //但仅局限于比较常用的二进制.八 ...

  9. java api教程_Java api 入门教程 之 JAVA的文件操作

    I/O类使用 由于在IO操作中,需要使用的数据源有很多,作为一个IO技术的初学者,从读写文件开始学习IO技术是一个比较好的选择.因为文件是一种常见的数据源,而且读写文件也是程序员进行IO编程的一个基本 ...

最新文章

  1. nginx学习笔记(8)虚拟主机名---转载
  2. css设置背景图片缩小,css3 设置背景图片大小(缩略图形式缩小)
  3. 拨号云服务器怎么自动配置网关_教你在阿里云创建增强型云网关
  4. 【转】如何用Maven创建web项目(具体步骤)
  5. 【重磅】ArcGIS 10.8手把手经典图文安装教程(附安装包全套装下载,亲测可用)
  6. ArcGIS实验教程——实验八:矢量数据拼接
  7. 毕业季,我的Linux求职之路
  8. 马化腾提问_互联网融合创新会带来哪些改变_知乎回答部分总结
  9. 离线语音识别技术品鉴——功能不同各有千秋
  10. 【java笔记】Object类
  11. windbg 分析pchunter导致的蓝屏
  12. 地理空间数据云 数据
  13. 饭店点餐系统之模块划分
  14. element手机验证格式_ElementUI验证手机号
  15. 数制和码制(数制的转换的方法,BCD码<8421,2421,5421,余三码>,格雷码,原码,反码,补码,定点数和浮点数)
  16. java如何通过client客戶端http实现get/ post请求传递json参数到restful 服务接口
  17. 接入以太坊(Ethereum)测试网络
  18. 数据结构与算法之美 32 字符串匹配基础(中):如何实现文本编辑器中的查找功能
  19. 有时间要看的书(个人整理)
  20. 前端js实现asr(语音转文字)

热门文章

  1. PCL学习笔记(三十三)-- 在平面模型上构建凸(凹)多边形
  2. arch linux必备软件,ArchLinux常用软件
  3. Yii2之gii的配置与使用
  4. 小学计算机教育实习教案,信息技术环境下小学综合实践活动课教学设计
  5. 操作系统时间比HVR版本发布时间旧时,解压会报错
  6. html5 canvas画粗线时座标指定注意事项
  7. ClickHouse-常见问题排查
  8. html管理系统前端,oa管理系统前端静态页面
  9. Java 循环-万年历(日历)
  10. python-docxtpl妙用:论文神器,excel习题集自动转换成word文档格式!