一包装类

我们对基本数据类型都非常熟悉,例如int、float、double、boolean、char等。基本数据类型是不具备对象的特性

的,比如基本类型不能调用方法、功能简单。为了让基本数据类型也具备对象的特性,Java为每个基本数据类型都提

供了一个包装类,这样我们就可以像操作对象那样来操作基本数据类型。

包装类(如:Integer,Double等)这些类封装一个相应的基本数据类型数值,并为其提供了一系列操作。

基本类型和包装类之间的对应关系:

包装类主要提供了两大类方法:

1将本类型和其他基本类型进行转换的方法;

2将字符串和本类型及包装类互相转换的方法。

二Integer包装类

我们以java.lang.Integer包装类为例,来看下包装类的特性。

Integer包装类的构造方法:

如下代码所示:

Integer包装类的常用方法:

实例:

public class Test{public static void main(String args[]){//定义int类型变量,值为86int score1 = 86; //创建Integer包装类对象,表示变量score1的值Integer score2=new Integer(score1);//将Integer包装类转换为double类型double score3=score2.doubleValue();//将Integer包装类转换为float类型float score4=score2.floatValue();//将Integer包装类转换为int类型int score5 =score2.intValue();//输出结果System.out.println("Integer包装类:" + score2);System.out.println("double类型:" + score3);System.out.println("float类型:" + score4);System.out.println("int类型:" + score5);}
}

编译运行结果:

三基本类型和包装类之间的转换

基本类型和包装类之间经常需要互相转换,还是以Integer包装类为例来进行讲解,其他包装类的用法基本相似。

看下面的代码示例:

在JDK1.5引入自动装箱和拆箱的机制后,包装类和基本类型之间的转换就更加轻松便利了。那什么是装箱和拆箱

呢?我们分别来看下:

装箱:把基本类型转换成包装类,使其具有对象的性质,又可分为手动装箱和自动装箱。

拆箱:和装箱相反,把包装类对象转换成基本类型的值,又可分为手动拆箱和自动拆箱。

实例:

public class Test{public static void main(String args[]){//定义double类型变量double a = 91.5;//手动装箱Double b = new Double(a);       //自动装箱Double c = a;      System.out.println("装箱后的结果为:" + b + "和" + c);//定义一个Double包装类对象,值为8Double d = new Double(87.0);//手动拆箱double e = d.doubleValue();//自动拆箱double f = d;System.out.println("拆箱后的结果为:" + e + "和" + f);}
}

编译运行结果:

四基本类型和字符串之间的转换

在程序开发中,我们经常需要在基本数据类型和字符串之间进行转换。其中,基本类型转换为字符串有三种法:

1使用包装类的toString()方法;

2使用String类的valueOf()方法;

3用一个空字符串加上基本类型,得到的就是基本类型数据对应的字符串。

再来看,将字符串转换成基本类型有两种方法:

1调用包装类的parseXxx静态方法;

2调用包装类的valueOf()方法转换为基本类型的包装类,会自动拆箱。

其他基本类型与字符串的相互转化这里不再一一列出,方法都类似。

实例:

public class Test{public static void main(String args[]){double m = 78.5;//将基本类型转换为字符串String str1 = Double.toString(m);System.out.println("m 转换为String型后与整数20的求和结果为: "+(str1+20));String str = "180.20";//将字符串转换为基本类型Double a =  Double.valueOf(str);System.out.println("str 转换为double型后与整数20的求和结果为: "+(a+20));}
}

编译运行结果:

五包装类总结

(1)所有的包装类(Integer、Long、Byte、Double、Float、Short)都是抽象类Number的子类。

Number类的成员方法:

(2)Character类

1转义序列

前面有反斜杠(\)的字符代表转义字符,它对编译器来说是有特殊含义的。下面列表展示了Java的转义序列:

2Character类的成员方法:

JavaSE入门学习30:Java常用类之包装类相关推荐

  1. 这些Java常用类,你必须要学会,还不快快收藏?(近两万字详细介绍)

    零基础学习之Java常用类 概述 包装类 和数学相关的类 String类 创建字符串对象 使用构造方法 使用静态方法 使用" " + 拼接 字符串对象的比较 字符串的常用方法 可变 ...

  2. Java常用类(谷粒商城学习记录)

    Java常用类 谷粒商城学习记录 谷粒商城学习记录 谷粒商城学习记录 干嘛老是提示我与别人的文章相似呢?真的是我自己整理的啊啊啊 老是提示与这个文章相似 https://blog.csdn.net/c ...

  3. Linux中的Java类,Java基础入门学习-Java中类的属性

    Java基础入门学习-Java中类的属性 发布时间:2006-05-27 00:46:15来源:红联作者:WWW Public.private.protected显示了三种类中的属性和服务的类型,pu ...

  4. 学习-Java常用类之Calendar类

    第1关:学习-Java常用类之Calendar类 任务描述 本关任务:获取给定年月的最后一天. 相关知识 我们通过之前的学习已经能够格式化并创建一个日期对象了,但是我们如何才能设置和获取日期数据的特定 ...

  5. 【java】java学习笔记之java常用类

    如下图所示为笔者总结的java常用类学习笔记,其中,附带有代码示例(未展开),方便理解记忆.需要源文件的请到我的资源中下载,下载地址:https://download.csdn.net/downloa ...

  6. 21天学通Java学习笔记-Day11(常用类)

    java 常用类(重点): String 类: String 类代表字符串.创建以后不能更变. public class tests { public static void main(String[ ...

  7. JavaSE入门0之java起源与发展历程

    JavaSE入门0之java起源与发展历程 文章目录 JavaSE入门0之java起源与发展历程 前言 1.Java的起源 2.Java和互联网 3.java历史 4.java语言特点 5.java应 ...

  8. Java基础-->一篇讲全Java常用类(详细易懂,建议收藏)

    Java基础–>一篇讲全Java常用类(详细易懂,建议收藏) 文章目录 Java基础-->一篇讲全Java常用类(详细易懂,建议收藏) 1.字符串相关的类 String类 概述 创建Str ...

  9. 第八章笔记 Java常用类

    第八章笔记 Java常用类 文章目录 第八章笔记 Java常用类 第一节 Java类库概述 Java类库文档 Java类库列表 第二节 数字相关类 Java数字类 大数字类 随机数类 数字工具类 第三 ...

最新文章

  1. linux命令注入,Linux kernel本地命令注入漏洞
  2. AS3与lua之间的交互
  3. c加加中print是什么意思_砖家财经:基金名字后面的A、B和C,分别代表什么意思?...
  4. List of Javascript Library / Ajax Framework / Web Application Framework
  5. 抽象 java 1614868764
  6. 直播预告:WLS/WAS故障基本分析介绍
  7. c 直接访问mysql_C语言访问MySQL数据库的方法
  8. linux终端 美化 git,linux终端美化oh-my-zsh
  9. ICM20602互补滤波
  10. Visio自制直角箭头
  11. 设置部署服务器的运行端口,以太坊swarm配置bzz运行常见问题解决方案
  12. 谷歌街景地图推出“时光机”功能
  13. “华为杯”山东理工大学第十一届 ACM程序设计竞赛 我不是股神
  14. 心动的本质是什么_风动,幡动,仁者心动,到底是什么在动
  15. 京东商品详情查询接口V1新版接口
  16. 颜色大全:颜色名称和颜色值。色板、色板对照表1
  17. curl unmatched close brace/bracket 处理
  18. 3070网卡驱动linux教程,Ubuntu 12.04下RT5370无线网卡驱动安装
  19. 内存卡格式化了数据可以恢复吗?
  20. 【项目分享~写给应届生的一篇文章】基于Web企业招聘网站 ~~ 登录注册设计

热门文章

  1. 运算符(关系运算和逻辑运算的介绍)(其一)
  2. 四巨头节奏合成器豪华版-Spectrasonics Stylus RMX v1.9.9c WiN-MAC
  3. oracle rowid不显示,oracle 的rowid问题!
  4. 坏人记事本_成为电子游戏中的坏人
  5. 禾赛终止IPO,为谁敲响了警钟?
  6. 超级方便的emf图片格式转eps矢量图方法,无需任何图片转换工具!!!
  7. 懒汉单例模式 java_Java懒汉式单例模式详解
  8. MES解决方案助力「机械加工行业」精益智造
  9. c语言求5名同学三科平均成绩,用C语言编写,某班有5名同学,三科成绩!通过键盘输入每名同学每门课的成绩!统计每人的不及格科目,输出学号、各门成绩、不及格科目数。...
  10. 分别在MS-DOS和MySQL Command Line Client编写sql语句