任务7 查找功能实现_第1页
任务7 查找功能实现_第2页
任务7 查找功能实现_第3页
任务7 查找功能实现_第4页
任务7 查找功能实现_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

J

程序设计任务7:查找功能实现1任务描述目录2技术准备3任务实施1、任务描述学生基本信息管理模块中显示学生信息功能只能显示所有的学生信息,无法显示部分学生信息。有时可能需要只显示部分学生的信息,如显示所有姓张的学生的信息,或者是显示姓名中包含有“军”的学生的信息。因此需要为学生基本信息管理模块添加一个查找功能,该功能实现按指定的查找条件显示满足条件的学生信息。要完成本任务需要掌握Java中一些常用基础类String和StringBuffer等的使用。2.1

String类技术准备2.2

StringBuffer类2.3包装类2.1

String类1.String类的初始化String类的初始化有两种方式,一是直接赋值,二是通过构造方法。(1)直接赋值直接赋值就是把一个字符串常量直接赋值给一个String类对象。格式:String变量名=字符串内容;例:Strings1=null;//初始化为空Strings2="";//初始化为空字符串Strings3="Hello";//初始化为字符串Hello初始化为null,表示此对象引用变量尚未指向任何具体对象;而初始化为空字符串,表示此对象引用变量已经指向了一个具体对象,只是此具体对象是一个空字符串。2.1

String类1.String类的初始化(2)通过构造方法可通过String类的构造方法来初始化一个String对象。String类有多个构造方法,常用构造方法如表所示。方法声明功能描述String()创建一个内容为空的字符串String(Stringvalue)根据指定的字符串内容创建对象String(char[]value)根据指定的字符数组创建对象2.1

String类【例7‑1】String类初始化使用示例2.1

String类2.String类常用方法(1)字符串基本操作方法声明功能描述intindexOf(intch)返回指定字符在此字符串中第一次出现的索引(下标),没出现返回-1intlastIndexOf(intch)返回指定字符在此字符串中最后一次出现的索引,没出现返回-1intindexOf(Stringstr)返回指定子字符串在此字符串中第一次出现的索引,没出现返回-1intlastIndexOf(Stringstr)返回指定子字符串在此字符串中最后一次出现的索引,没出现返回-1charcharAt(intindex)返回字符串中指定位置上的字符,如下标越界抛出异常intlength()返回字符串的长度2.1

String类【例7‑2】字符串基本操作使用示例2.1

String类2.String类常用方法(2)字符串转换操作方法声明功能描述StringtoLowerCase()将String中的所有字符都转换为小写StringtoUpperCase()将String中的所有字符都转换为大写char[]toCharArray()将此字符串转换为一个字符数组staticStringvalueOf()将基本类型数据或字符数组转换为字符串2.1

String类【例7‑3】字符串转换操作示例2.1

String类2.String类常用方法(3)字符串的替换和去空操作方法声明功能描述Stringreplace(CharSequenceoldstr,CharSequencenewstr)返回一个新的字符串,它是通过用newstr替换此字符串中出现的所有oldstr得到的Stringtrim()去除字符串首尾空格2.1

String类【例7‑4】字符串的替换和去空操作示例2.1

String类2.String类常用方法(4)字符串的判断操作方法声明功能描述booleanendsWith(Stringsuffix)判断此字符串是否以指定的字符串结尾booleanstartsWith(Stringprefix)判断此字符串是否以指定的字符串开始booleanequals(ObjectanObject)将此字符串与指定的字符串比较booleancontains(CharSequencecs)判断此字符串中是否包含指定的字符序列booleanisEmpty()判断字符串是否为空字符串2.1

String类【例7‑5】字符串判断操作示例2.1

String类【例7‑6】字符串比较示例==与equals()方法的区别:==用于比较两个字符串对象的引用地址是否相同,equals()方法用于比较两个字符串的值是否相同。2.1

String类2.String类常用方法(5)字符串的截取和分割操作方法声明功能描述String[]split(Stringregex,intlimit)将字符串按指定规则regex分割为若干个子字符串,如指定limit(limit>0),则最多分割limit-1次Stringsubstring(intbeginIndex,intendIndex)取子串,从指定位置开始取到指定位置结束(不包含结束位置)。结束位置可以省略,如没有指定表示取到串尾2.1

String类【例7‑7】字符串的截取和分割操作示例2.2

StringBuffer类String类型的字符串是一个常量,一旦创建,其内容和长度都无法改变。为了满足对字符串修改的需求,Java中提供了一个StringBuffer类(字符串缓冲区)来操作字符串。StringBuffer和String类最大的区别就在于它的内容和长度都是可以改变的。StringBuffer相当于一个字符容器,可以往里面任意添加或删除字符。StringBuffer类主要用于修改字符串内容。2.2

StringBuffer类StringBuffer类常用方法。方法声明功能描述StringBufferappend(Stringstr)在尾部添加内容StringBufferinsert(intoffset,Stringstr)在指定位置插入字符串strStringBufferdeleteCharAt(intindex)删除指定位置上的字符StringBufferdelete(intstart,intend)删除指定范围内的字符串StringBufferreplace(intstart,intend,Strings)将指定范围内的字符或字符串用新的字符串s进行替换voidsetCharAt(intindex,charch)修改指定位置上的字符StringtoString()转换成字符串StringBufferreverse()将其内容反转2.2

StringBuffer类说明:(1)在操作String类和StringBuffer类时用到的表示区间的范围通常都是起始值包括在内,而结束值不包括在内的,即一个左闭右开的区间,形如[起始值,结束值)。(2)append()方法是一个重载方法,参数可以是字符、数值型数据、布尔型数据、字符串或者字符数组等。(3)insert()方法中插入位置的合法范围为0-length,如超出会引发异常。该方法也是一个重载方法,参数可以是字符、数值型数据、布尔型数据、字符串或者字符数组等。2.2

StringBuffer类【例7‑8】添加操作示例2.2

StringBuffer类【例7‑9】删除操作示例2.2

StringBuffer类【例7‑10】修改操作示例2.3包装类虽然Java是面向对象的编程语言,但它所包含的8种基本数据类型却不支持面向对象的编程机制(没有属性和方法)。在Java中,很多类的方法都需要接收引用类型的对象,此时就无法将一个基本数据类型的值传入。为了解决这样的问题,JDK中提供了一系列的包装类,通过这些包装类可以将基本数据类型的值包装为引用数据类型的对象。2.3包装类每种基本数据类型所对应的包装类如下表所示。基本数据类型对应的包装类byteBytecharCharacterintIntegershortShortlongLongfloatFloatdoubleDoublebooleanBoolean2.3包装类包装类和基本数据类型可以互相转换,在转换时可以自动装箱(AutoBoxing)和自动拆箱(AutoUnboxing)。自动装箱是指将基本数据类型的变量赋给对应的包装类变量。自动拆箱是指将包装类对象类型直接赋给一个对应的基本数据类型变量。2.3包装类【例7‑11】自动装箱与自动拆箱示例2.3包装类通过包装类和自动装箱、拆箱功能,可以把基本数据类型的变量转换成对象来使用,也可以把包装类的对象转换成基本类型的变量来使用。Java除了支持基本数据类型与包装类之间的互相转换外,还提供了其他方法来支持基本数据类型、包装类及字符串之间的转换。2.3包装类(1)通过String类的valueOf()方法可以将8种基本数据类型转换为对应的字符串类型。例7-12:2.3包装类(2)通过8种包装类的静态方法valueOf()既可以将对应的基本数据类型转换为包装类,也可以将变量内容匹配的字符串转换为对应的包装类(Character包装类除外)。例7-13:2.3包装类提示:在使用包装类的valueOf(Strings)方法将字符串转为相对应的包装类对象时,参数字符串s不能为null,而且字符串s必须是可以解析为相应基本类型的数据(即去掉两侧的双引号后就是一个合法的基本类型数据,如”12”、”12.5”),否则虽然编译通过,但运行时会报错。如字符串”12ab”、”2a3.4”等就无法正常解析为基本类型数据,在运行时就会引发异常。2.3包装类(3)通过8种包装类的有参构造方法同样既可以将对应的基本数据类型转换为包装类,也可以将变量内容匹配的字符串转换为对应的包装类(Character包装类除外)。例7-14:2.3包装类(4)通过8种包装类的静态方法parseXxx()可以将变量内容匹配的字符串转换为对应的基本数据类型(Character包装类除外)。例7-15:在使用包装类的parseXxx(Strings)方法时,同样参数字符串s不能为null,而且必须是可以解析为相应基本类型的数据才可以。2.3包装类(5)包装类都重写了Object类中的toString()方法,以字符串的形式返回被包装的基本数据类型的值。例7-16:3.1查找功能实现任务实施3.2功能测试3.1查找功能实现本任务要求能够按姓氏查找相应的学生,当用户选择了查找功能后,可从

温馨提示

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

评论

0/150

提交评论