07_字符串.ppt_第1页
07_字符串.ppt_第2页
07_字符串.ppt_第3页
07_字符串.ppt_第4页
07_字符串.ppt_第5页
已阅读5页,还剩15页未读, 继续免费阅读

下载本文档

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

文档简介

1、七个。字符串、字符串类和字符串生成器类。字符串、字符串或字符串是由零个或多个字符组成的有限序列。通常记录为s=a1a2an(n=0)。它是一种用编程语言表示文本的数据类型。一般来说,整个字符串都是作为操作对象的,比如在字符串中查找一个子串,查找一个子串,在字符串的某个位置插入一个子串,删除一个子串等等。两个字符串相等的充要条件是长度相等,每个对应位置的字符相等。假设P和Q是两个字符串,寻找Q在P中的第一个位置的操作称为模式匹配。字符串的两种基本存储模式是顺序存储模式和链式存储模式。1.1空值和“空”值是两个不同的概念。null值是一个特殊值,它不同于任何数据类型的任何有效值。但是,在任何数据类

2、型中,空值都是合法值。空值用于指示缺失或不适用的信息。每种数据类型的空值都有不同的规定。字符串被初始化为空,而不是空字符。空、都是不同的。(空空空空字符串)字符类型的空值规则。空字符串“空格”“制表符”输入“R”换行“N”。1.2字符串类方法介绍,实战,字符串文本=你好;Out.println(字符串内容为文本);Out.println(字符串长度. text . length();Out.println(等于hello?等于(你好);Out.println(转换为大写: text . touppercase();Out.println(转换为小写: Text . ToLowerCase();

3、1.3字符串类的静态方法,所谓的静态方法是不需要构造对象就可以直接调用的方法。字符串类下有几种常用的静态方法。string . format();格式字符串字符串值(数据);将其他类型的数据转换为字符串类型的数据。2.不变字符串。在Java中使用字符串有一个非常重要的规则。必须记住,一旦配置了字符串对象,它的内容就是固定的。字符串类中似乎修改字符串值的每个方法实际上都创建了一个全新的字符串对象来包含修改后的字符串内容,但是原始的字符串对象根本不会移动。2.1字符串池,请遵守以下代码:字符串=新字符串(IBM-SSZ);2.2实战:猜结果,字符串s=新字符串(IBM);字符串s1=新字符串(IB

4、M);if(s=S1)out . println(=);否则打印出来!=);字符串s3=IBM字符串s4=IBMif(S3=S4)out . println(=);否则打印出来!=);2.3概要:Java将在执行时维护一个字符串池。对于一些可以共享的字符串对象,它将首先找出字符串池中是否存在相同的字符串内容,如果存在,它将直接返回它,而不是创建一个新的字符串对象来减少内存消耗。2.4应该注意的是,string sr1=“IBM SSZ!字符串str2=IBMSSZ!system . out . println(str 1=str 2);Str1和str2指的是同一个IBMSSZ!true,2.

5、5结论:在Java中,如果=用于两个引用名称,则用于比较这两个引用名称是否引用同一个对象。不能使用=来比较两个字符串的字符内容是否相同。如果要比较两个字符串对象的字符值是否相同,应该使用equals()方法。2.6字符串重载“”和“=”,公共静态无效主字符串(字符串参数)字符串字符串=新字符串(你好);字符串str1=新字符串(顺时针);str=str1system . out . println(str);欢迎使用字符串。system . out . println(s);你好,顺时针,你好,顺时针,欢迎来到输出结果,2.6.1不可变原则,因为我们刚才说过String对象是不可变的,所以我们

6、可以推测上面的代码可能是这样工作的。string对象有一个append()方法,它将在Str和str1连接后生成一个全新的String对象来包含内容。然后该对象与“欢迎你”连接,生成另一个新的字符串对象。等等。生成最终字符串。2.6.2字符串。为了安全起见,采用了不变的规则,但是这种方法会产生大量需要垃圾收集的中间对象。虽然有自动垃圾收集,它也导致运行效率。2.7 J2SE 5.0-字符串生成器,字符串对象的长度是。也许您将使用字符串连接来添加新字符,但是将生成一个新的字符串实例。如果程序经常需要这个额外的字符串,不建议使用它来完成连接。在面向对象编程中,最好重用生成的对象,对象的生成需要内存

7、空间。连续生成新的字符串实例是一种非常低效的行为。2.8 StringBuilder、StringBuffer、StringBuilder(单线程)只是J2SE 5.0中的新类。如果J2SE 5.0之前的版本有相同的要求,就使用java.lang.StringBuffer(多线程)。公共类stringbuilder演示公共静态void main(字符串参数)/todo自动生成方法存根字符串文本=;/get long beginTime=系统。当前系统时间单位为毫秒的记录begintime中的current timemillis();for(int I=0;i100001)文本=1;/获取系统执行for循环后的时间(以毫秒为单位),并将其记录在endTime中。长结束时间=系统。current timemillis();System.out.println(执行时间:(结束时间-开始时间);StringBuilder生成器=新StringBuilder();开始时间=系统.当前时间(毫秒);for(int I=0;10000;I)builder . append(I);结束时间=系统。当前时间

温馨提示

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

评论

0/150

提交评论