Java面向对象程序设计(IDEA版) 课件 第6、7章 面向对象特征、Java核心类库.ppt

Java面向对象程序设计(IDEA版) 课件 第6、7章 面向对象特征、Java核心类库.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

面向对象程序设计StringBuilder类表示可变字符串,即这个类的对象内容是可以修改的。一般来说,只要使用字符串的地方,都可使用StringBuilder类,它们比String类更灵活。7.3.1创建StringBuilder对象publicStringBuilder():创建一个没有字符的字符串缓冲区,初始容量为16个字符。此时length()方法的值为0,而capacity()方法的值为16。publicStringBuilder(intcapacity):创建一个没有字符的字符串缓冲区,capacity为指定的初始容量。publicStringBuilder(Stringstr):利用一个已存在的字符串对象str创建一个字符串缓冲区对象,另外再分配16个字符的缓冲区。设有下列代码:varstr=newStringBuilder(Hello);str对象在内存中的状态如图6-3所示。7.3.1创建StringBuilder对象StringBuilder类除定义了length()、charAt()、indexOf()、getChars()等方法外,还提供了下列常用方法:publicintcapacity():返回当前的字符串缓冲区的总容量。publicvoidsetCharAt(intindex,charch):用ch修改指定位置的字符。7.3.2StringBuilder类常用操作publicStringBuilderappend(Stringstr)publicStringBuilderinsert(intoffset,Stringstr)publicStringBuilderdeleteCharAt(intindex)publicStringBuilderdelete(intstart,intend)publicStringBuilderreplace(intstart,intend,Stringstr)publicStringBuilderreverse():将字符串的所有字符反转。publicStringsubstring(intstart):返回从start开始到字符串末尾的子字符串。publicStringsubstring(intstart,intend):返回从start开始到end(不包括end)之间的子字符串。publicvoidsetLength(intnewLength):设置字符序列的长度。publicvoidsetCharAt(intindex,charch):用ch修改指定位置的字符。7.3.2StringBuilder类常用操作varss=newStringBuilder(Hello);System.out.println(ss.length());System.out.println(ss.capacity());ss.append(Java);System.out.println(ss);System.out.println(ss.insert(5,,));System.out.println(ss.replace(6,10,World!));System.out.println(ss.reverse());程序7-6StringBuilderDemo.java在Java语言中不支持运算符重载,但有一个特例,即“+”运算符(包括“+=”),它是唯一重载的运算符。该运算符除用于计算两个数之和外还用于连接两个字符串。当用“+”运算符连接的两个操作数其中有一个是String类型时,该运算即为字符串连接运算,如:7.3.3“+”运算符的重载intage=18;vars=Heis+age+yearsold.;上述连接运算过程实际上是按如下方式进行的:vars=newStringBuilder(Heis).append(age).append(yearsold.).toString();Java还定义了StringBuffer类,它与StringBuilder类的区别是:StringBuffer类的实例是线程安全的,而StringBuilder类的实例不是线程安全的。如果不需要线程同步,建议使用StringBuilder类。StringBuffer类面向对象程序设计

文档评论(0)

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

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

1亿VIP精品文档

相关文档