第4章_包装类与日期类.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章包装类与日期类; Java的基本数据类型可以放入寄存器,正因如此,基本数据类型的存取、运算比各种类类型速度要快。所以为了兼顾运算的效率,java当中当然要有基本数据类型。 ;包装类;包装类 ;对于包装类说,这些类的用途主要包含两种: 作为和基本数据类型对应的类类型存在,方便涉及到对象的操作。 包含每种基本数据类型的相关属性如最大值、最小值等,以及相关的操作方法。;包装类 ;包装类 ;包装类 ;从类 java.lang.Object 继承的方法: equals toString;*;基本类型与包装类型的相互转换:;JDK自从1.5(5.0)版本以后,就引入了自动拆装箱的语法,也就是在进行基本数据类型和对应的包装类转换时,系统将自动进行,这将大大方便程序员的代码书写。使用示例代码如下: ;自动装箱与拆箱;自动装箱、拆箱的功能提供了方便性,但隐藏了一些细节,所以必须小心 :;将i1和i2的??改为200:;说明: 当我们在利用‘==’比较基本类型时,比较的是值。但是==运算符用于比较包装器对象时,是检测对象是否值向同一个存储区域 在自动装箱时对于值从–128到127之间的值,它们被装箱为Integer对象后,会存在内存中被重用,所以范例1中使用==进行比较时,i1 与 i2实际上参考至同一个对象。如果超过了从–128到127之间的值,被装箱后的Integer对象并不会被重用,即相当于每次装箱时都新建一个Integer对象,所以范例2使用==进行比较时,i1与i2参考的是不同的对象。 ;为避免此类问题,建议使用equals方法比较对象是否相等,而不是用==运算符比较对象是否相同 ;Double和Float;浮点(Float)和双精度(Double)提供了isInfinite(?)和isNaN(?)方法,用于操作两个特殊的双精度(double)和浮点(float)值:Infinity (无穷)和NaN(非具体数字)。 NaN用于处理计算中出现的错误情况,比如0.0除以0.0,或者求负数的平方根。 Infinity表示无穷大,Java中小数除以0值为无穷大,比如1f/0f结果为正无穷大,1f/-0f结果为负无穷大 。;在下面的例子中构造了两个Double对象;一个是无穷,另一个是非数字: class InfNaN { public static void main(String args[]) { Double d1 = new Double(1.0f/0.0f); Double d2 = new Double(0.0f/0.0f); System.out.println(d1 + : + d1.isInfinite() + , + d1.isNaN()); System.out.println(d2 + : + d2.isInfinite() + , + d2.isNaN()); } } 程序运行产生如下的输出: Infinity: true, false NaN: false, true;Byte, Short, Integer 和 Long;Character类;class IsDemo { public static void main(String args[]) { char a[] = { a, b, 5, ?, A, }; for (int i = 0; i a.length; i++) { if (Character.isDigit(a[i])) System.out.println(a[i] + is a digit.); if (Character.isLetter(a[i])) System.out.println(a[i] + is a letter.); if (Character.isWhitespace(a[i])) System.out.println(a[i] + is whitespace.); if (Character.isUpperCase(a[i])) System.out.println(a[i] + is uppercase.); if (Character.isLowerCase(a[i])) System.out.println(a[i] + is lowercase.); } } };程序的输出结果如下所示: a is a lette

文档评论(0)

糖糖 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档