publicStringsubstringintbeginIndex返回一个新的字符串_第1页
publicStringsubstringintbeginIndex返回一个新的字符串_第2页
publicStringsubstringintbeginIndex返回一个新的字符串_第3页
publicStringsubstringintbeginIndex返回一个新的字符串_第4页
publicStringsubstringintbeginIndex返回一个新的字符串_第5页
已阅读5页,还剩53页未读 继续免费阅读

VIP免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章Java库常见类第7章Java库常见类在进行Java编程的时候,常常须要不断引用Java类库所供应的类,这些类对程序质量起到至关重要的作用,本章将介绍其中基本、最常用的类。7.1基本类型的类包装由于基本数据类型不供应对其进行操作的方法,Java供应了基本数据类型相关的类,实现了对基本数据类型的封装,这些类所供应的方法足以满足对数据进行操作的须要。基本数据类型包括byte、int、short、long、float、double、char,相应的类在java.lang包中,分别是Byte、Integer、Short、Long、Float、Double和Character类。7.1基本类型的类包装7.1.1Float类和Double类对float、double基本型数据的类包装。运用Float类的构造方法:Float(Floatnum)创建一个Float类型的对象;运用Double的构造方法:Double(doublenum)创建一个Double类型的对象。7.1基本类型的类包装7.1.1Float类和Double类对float、double基本型数据的类包装。Float对象调用floatValue()方法可以返回该对象含有的float型数据。Double对象调用doubleValue()方法可以返回该对象含有的double型数据。7.1基本类型的类包装7.1.2Byte、Integer、Short类和Long类下述构造方法分别创建Byte、Integer、Short和Long类型的对象:Byte(bytenum)Integer(intnum)Short(shortnum)Long(longnum)Byte、Integer、Short和Long对象分别调用byteValue()、intValue()、shortValue()和longValue()方法,返回该对象含有的基本型数据7.1基本类型的类包装7.1.3Character类运用Character类的构造方法:Character(charc)创建一个Character类型的对象。Character对象调用charValue()方法可以返回该对象含有的char型数据。须要留意的是,Character类还另外包含了一些类方法,这些方法可以干脆通过类名调用,用来进行字符分类。7.1基本类型的类包装7.1.3Character类Character类中的一些常用方法如表7-1所示。表7-1Character类中的一些常用方法方法含义staticbooleanisDigit(charch)确定指定字符是否为数字staticbooleanisLetter(charch)确定指定字符是否为字母staticbooleanisLetterOrDigit(charch)确定指定字符是否为字母或数字staticbooleanisLowerCase(charch)确定指定字符是否为小写字母staticbooleanisUpperCase(charch)确定指定字符是否为大写字母staticbooleanisTitleCase(charch)确定指定字符是否为首字母大写字符7.1基本类型的类包装7.1.3Character类【例7-1】将一个字符数组中的小写字母变成大写字母,并将大写字母变成小写字母。1)在包“ch7”中创建可视类“Ex7_1”,在程序界面中添加一个按钮(参见例6-2),为按钮添加事务代码。2)程序运行结果如图所示。7.1基本类型的类包装7.1.4String类Java运用java.lang包中的String类来创建字符串。1.创建字符串字符串是常量;它们的值在创建之后不能更改。字符串缓冲区支持可变的字符串。因为String对象是不行变的,所以可以共享。例如:Stringstr="abc";等效于:chardata[]={'a','b','c'};Stringstr=newString(data);7.1基本类型的类包装7.1.4String类1.创建字符串(1)先声明后创建Strings;s=newString("abc");(2)声明和创建一步完成Strings=newString("abc");(3)用已创建的字符串创建另一个字符串Stringb=String(a);(4)利用其它String类的构造方法7.1基本类型的类包装7.1.4String类2.获得一个字符串的长度方法:publicintlength()可以获得一个字符串的长度,例如:Stringtom=newString("tom");Stringjerry=newString("jerry");n1=tom.length(); //字符串长度为3n2=jerry.length(); //字符串长度为57.1基本类型的类包装7.1.4String类3.返回指定索引处的char值方法:publiccharcharAt(intindex)返回指定索引处的char值,索引范围为从0到length()–1。例如:c=tom.charAt(2); //m7.1基本类型的类包装7.1.4String类4.字符串比较方法:publicbooleanequals(ObjectanObject)当且仅当该参数不为null,并且是与此对象表示相同字符序列的String对象时,结果才为true.例如:Stringman=newString("tom");man.equals(tom); //trueman.equals(jerry); //falsepublicbooleanequalsIgnoreCase(StringanotherString)将此String与另一个String比较,不考虑大小写。7.1基本类型的类包装7.1.4String类5.比较两个字符串方法:publicintcompareTo(StringanotherString)按字典依次将该String对象表示的字符序列与参数字符串所表示的字符序列进行比较。Stringstr=newString("ton");tompareTo(str); //小于0tompareTo(jerry); //大于0tompareTo(man); //等于07.1基本类型的类包装7.1.4String类5.比较两个字符串字符串对象调用

publicintcompareToIgnoreCase(Stringstr)方法,该方法不考虑大小写。7.1基本类型的类包装7.1.4String类6.返回字符在字符串中第一次出现处的索引方法:publicintindexOf(intch)返回指定字符在此字符串中第一次出现处的索引。假如在此String对象表示的字符序列中出现值为ch的字符,则返回第一次出现该字符的索引。假如没有检索到字符ch,该方法返回-1。7.1基本类型的类包装7.1.4String类6.返回字符在字符串中第一次出现处的索引方法:publicintindexOf(Stringstr)从当前字符串的头起先检索字符串str,并返回首次出现str的位置。假如没有检索到字符串,该方法返回-1。

7.1基本类型的类包装7.1.4String类6.返回字符在字符串中第一次出现处的索引方法:publicintindexOf(Stringstr,intfromIndex)从当前字符串的fromIndex位置处起先检索字符串str,并返回首次出现str的位置。7.1基本类型的类包装7.1.4String类6.返回字符在字符串中第一次出现处的索引方法:publicintlastIndexOf(Stringstr)从当前字符串的头起先检索字符串str,并返回最终出现str的位置。7.1基本类型的类包装7.1.4String类6.返回字符在字符串中第一次出现处的索引例如:Stringstu=newString("Iamagoodstudent");stu.indexOf('a'); //1stu.indexOf("good"); //5stu.indexOf("a",7); //13stu.indexOf("x",7); //-17.1基本类型的类包装7.1.4String类7.返回一个子字符串方法:publicStringsubstring(intbeginIndex)返回一个新的字符串,是此字符串的一个子字符串。该子字符串从指定索引处的字符起先,直到此字符串末尾。7.1基本类型的类包装7.1.4String类7.返回一个子字符串方法:publicStringsubstring(intbeginIndex,intendIndex)返回一个新字符串,它是此字符串的一个子字符串。该子字符串从指定的beginIndex处起先,直到索引endIndex-1处的字符。因此,该子字符串的长度为endIndex-beginIndex。例如:stu.substring(7); //“goodstudent”stu.substring(7,11); //“good”7.1基本类型的类包装7.1.4String类8.将字符串全部字符都转换为小写方法:publicStringtoLowerCase()将此String中的全部字符都转换为小写。字符串对象调用publicStringtoUpperCase()运用默认语言环境的规则将此String中的全部字符都转换为大写。Stringabc=newString("abcDEF");abc.toLowerCase(); //"abcdef"abc.toUpperCase(); //"ABCDEF"7.2StringBuffer类String类创建的字符串对象是不行修改的,运用StringBuffer类可以创建可修改的字符串序列。7.2.1StringBuffer类的构造方法StringBuffer类有三个构造方法:StringBuffer()运用该无参数的构造方法创建的StringBuffer对象,其初始容量可以容纳16个字符。当对象存放的字符串长度大于16时,其容量将自动增加。7.2StringBuffer类7.2.1StringBuffer类的构造方法StringBuffer类有三个构造方法:StringBuffer()运用该无参数的构造方法创建的StringBuffer对象,其初始容量可以容纳16个字符。当对象存放的字符串长度大于16时,其容量将自动增加。StringBuffer对象可以通过length()方法获得其存放的字符串的长度,通过capacity()方法获得对象的实际容量。7.2StringBuffer类7.2.1StringBuffer类的构造方法StringBuffer(intsize)运用该构造方法创建的StringBuffer对象,其初始容量为参数size指定的字符个数,当对象存放的字符串长度大于size时,其容量将自动增加。StringBuffer(Strings)运用该构造方法创建的StringBuffer对象,其初始容量为参数字符串s的长度外加16个字符。当对象存放的字符串长度大于该长度时,其容量将自动增加。7.2StringBuffer类7.2.2StringBuffer类的常用方法StringBuffer类中的一些常用方法如表7-2所示。方法含义append(str)将其他Java类型数据转化为字符串后再追加到StringBuffer对象中charAt(intn)得到参数n指定的位置上的单个字符,第一个位置为0voidsetCharAt(intn,charch)将当前StringBuffer对象实体中的字符序列位置n处的字符用参数ch指定的字符替换StringBufferinsert(intindex,Stringstr)将一个字符串插入实体中的字符序列中,并返回当前对象的引用publicStringBufferreverse()将该对象实体中的字符序列翻转,并返回当前对象的引用StringBufferdelete(intstartIndex,intendIndex)从当前StringBuffer对象实体中的字符序列中删除一个子字符序列,并返回当前对象的引用,这里startIndex为需删除的首字符下标,而endIndex为需删除的最后一个字符的下一个字符的下标StringBufferreplace(intstartIndex,intendIndex,Stringstr)将当前StringBuffer对象实体中的字符序列的一个子字符序列用参数str指定的字符串替换7.3时间日期类7.3.1Data类Date类在java.util包中。运用Date类的无参数构造方法创建的对象可以获得本地当前时间。Date对象表示时间的默认依次是星期、月、日、小时、分、秒、年。可以运用DateFormat的子类SimpleDateFormat来实现日期的格式化。7.3时间日期类7.3.1Data类SimpleDateFormat有一个常用构造方法:publicSimpleDateFormat(Stringpattern)该构造方法可以用参数pattem指定的格式创建一个对象,该对象调用Format(Datadate)方法格式化时间对象date。7.3时间日期类7.3.1Data类【例7-2】用三种格式输出时间。1)在包“ch7”中创建可视类“Ex7_2”,在程序界面中添加一个按钮(参见例6-1),为按钮添加事务代码。2)程序运行结果如图所示。7.3时间日期类7.3.2Calendar类Calendar类是一个抽象类,封装在java.util包中,它为特定瞬间与一组诸如YEAR、MONTH、DAY_OF_MONTH、HOUR等日历字段之间的转换供应了一些方法,并为操作日历字段(例如获得下星期的日期)供应了一些方法。这些字段和方法被定义为protected。7.3时间日期类7.3.2Calendar类Calendar供应了一个类方法getInstance,以获得此类型的一个通用的对象。Calendar的getInstance方法返回一个Calendar对象:CalendarrightNow=Calendar.getInstance();7.3时间日期类7.3.2Calendar类【例7-3】运用Calendar类输出当前月份的日历页。1)在包“ch7”中创建可视类“Ex7_3”,在程序界面中添加一个标签。2)在类的createSShell()方法中添加代码如下:3)程序运行结果如图7-4所示。7.4数学类7.4.1Math类在编写程序时,可能须要计算初等指数、对数、平方根和三角函数等。java.lang包中的Math类包含用于执行基本数学运算的方法,这些方法可以干脆通过类名调用。另外,Math类还有两个静态变量,即E和PI,它们的值分别是2.718281828459045和3.141592653589793。7.4数学类7.4.1Math类Math类的常用方法方法含义publicstaticdoubleabs(doublea)返回double值的绝对值publicstaticdoublesin(doublea)返回角的三角正弦publicstaticdoublecos(doublea)返回角的三角余弦publicstaticdoubletan(doublea)返回角的三角正切publicstaticdoubleacos(doublea)返回一个值的反余弦;返回的角度范围在0.0~pi之间publicstaticdoubleasin(doublea)返回一个值的反正弦;返回的角度范围在-pi/2~pi/2之间publicstaticdoubleatan(doublea)返回一个值的反正切;返回的角度范围在-pi/2~pi/2之间publicstaticdoubleexp(doublea)返回欧拉数e的double次幂的值publicstaticdoublepow(doublea,doubleb)返回a的b次方publicstaticdoublemax(doublea,doubleb)返回两个double值中较大的一个publicstaticdoublemin(doublea,doubleb)返回两个double值中较小的一个publicstaticdoubleceil(doublea)返回大于等于参数a的最小双精度实数publicstaticdoublefloor(doublea)返回小于等于参数a的最大双精度实数publicstaticlonground(doublea)将a四舍五入后返回publicstaticintround(floata)将a四舍五入后返回publicstaticdoublerandom()返回带正号的double值,该值大于等于0.0且小于1.0。返回值是一个伪随机选择的数,在该范围内(近似)均匀分布7.4数学类7.4.2NumberFormat类有时可能须要对输出的数字结果进行必要的格式化,可以运用java.text包中的NumberFormat类,该类调用类方法:publicstaticfinalNumberFormatgetInstance()返回当前默认语言环境的通用数值格式,即实例化一个NumberFormat对象,该对象调用publicfinalStringformat(doublenumber)方法可以实例化数字number。7.4数学类7.4.2NumberFormat类NumberFormat类的常用方法见表7-5。表7-5NumberFormat类的常用方法方法含义publicvoidsetMaximumIntegerDigits(intnewValue)设置数的整数部分所允许的最大位数publicvoidsetMinimumIntegerDigits(intnewValue)设置数的整数部分所允许的最小位数publicvoidsetMaximumFractionDigits(intnewValue)设置数的小数部分所允许的最大位数publicvoidsetMinimumFractionDigits(intnewValue)设置数的小数部分所允许的最小位数7.4数学类7.4.2NumberFormat类【例7-4】数字输出样式的格式化。1)在包“ch7”中创建可视类“Ex7_4”,在程序界面中添加一个按钮。为按钮添加事务代码如下:2)程序运行结果如图7-5所示。7.4数学类7.4.3BigInteger类程序有时须要处理大整数,java.math包中的BigInteger类供应随意精度的整数运算.构造方法:PublicBigInteger(Stringval)将字符串val转换为整数,然后创建一个十进制的BigInteger对象。该构造方法可以发生NumberFormatException异样,也就是说,字符串参数val中假如含有非数字字符就会发生NumberFormatException异样。7.4数学类7.4.3BigInteger类表7-6BigInteger类的常用方法方法意义publicBigIntegeradd(BigIntegerval)返回当前大整数对象与参数指定的大整数对象的和。publicBigIntegersubtract(Biglntegerval)返回当前大整数对象与参数指定的大整数对象的差。publicBigIntegermultiply(BigIntegerval)返回当前大整数对象与参数指定的大整数对象的积。publicBigIntegerdivide(BigIntegerval)返回当前大整数对象与参数指定的大整数对象的商。publicBiglntegerremainder(BigIntegerval)返回当前大整数对象与参数指定的大整数对象的余。publicintcompareTo(BigIntegerval)返回当前大整数对象与参数指定的大整数的比较结果,返回值是1、-1或0,分别表示当前大整数对象大于、小于或等于参数指定的大整数。publicBigIntegerabs()返回当前大整数对象的绝对值。publicBigIntegerpow(intexponent)返回当前大整数对象的exponent次幂。publicStringtoString()返回当前大整数对象十进制的字符串表示。publicStringtoString(intp)返回当前大整数对象p进制的字符串表示。7.4数学类7.4.3BigInteger类【例7-5】计算1+2!+...前30项和。1)在包“ch7”中创建可视类“Ex7_5”,在程序界面中添加一个按钮(参见例7-1)。为按钮添加事务代码如下:2)程序运行结果如图7-6所示。7.4数学类7.4.4Random类java.util.Random供应了产生各种类型随机数的方法,可以产生int、long、float、double以及Goussian等类型的随机数。(1)Random():建立一个Random类的实例,随机产生种子,用系统时间作为seed。(2)Random(longseed):建立一个Random类的实例,并指定随机数种子。

7.4数学类7.4.4Random类Random类的方法有如下几个:(1)booleannextBoolean()返回一个随意的布尔值,可能是true也可能是false。(2)doublenextDouble()返回一个随意的浮点数,范围在0.0与1.0之间。(3)floatnextFloat()返回一个随意的浮点数,范围在0.0与1.0之间。

7.4数学类7.4.4Random类Random类的方法有如下几个:(4)intnextInt()返回一个随意的整数。(5)intnextInt(intn)返回一个随意的整数,范围从0到n-1之间。(6)longnextLong()返回一个随意的长整数。7.4数学类7.4.4Random类(7)voidsetSeed(longseed)设置随机数种子。随机数种子会影响随机数的产生状况,假如程序执行时的随机数种子和某一次执行时的一样,则产生的随机数数列会和那次所产生的相同。假如要每次都产生不同的随机数数列,一种方法是都不要运用setSeed方法设置随机数种子;另一种方法是每次都设置不同的随机数种子,该随机数种子往往与当前时间相联系。7.5实训7.5.1实训目的1.了解并驾驭Java中常见类的运用。7.5.2实训内容1.运用字符串类和字符类要求:运用StringBuffer类的各种方法。【实训7-1】编写一个Java程序,输入一个随意字符串,然后统计其中各字符的数目。7.4数学类7.5.2实训内容1.运用字符串类和字符类1)创建Java类。2)添加组件。3)为按钮添加事务响应代码。4)运行程序。7.4数学类7.5.2实训内容2.运用时间日期类要求:日历程序中运用日期类Calendar,留意年份与月份数据的提取。【实训7-2】编写一个Java程序,显示月历。可以通过按钮选择上一月和下一月。

7.4数学类7.5.2实训内容2.运用时间日期类步骤如下:1)在包“ch7”中创建Java类“Prac7_2”,参见实训7-1.2)添加组件。用鼠标右键单击GUI程序界面的任何位置,在快捷菜单中选择“SetLayout”→“null”。7.4数学类7.5.2实训内容2.运用时间日期类在程序界面中“画”出一个标签

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论