书签 分享 收藏 举报 版权申诉 / 8
上传文档赚钱

类型Java程序设计资料:单元10 String与StringBuffer.doc

  • 上传人(卖家):罗嗣辉
  • 文档编号:2047629
  • 上传时间:2022-01-21
  • 格式:DOC
  • 页数:8
  • 大小:5.46MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《Java程序设计资料:单元10 String与StringBuffer.doc》由用户(罗嗣辉)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    Java程序设计资料:单元10 String与StringBuffer Java 程序设计 资料 单元 10 String StringBuffer
    资源描述:

    1、单元 10 String 与 StringBuffer单元目标 掌握字符串长度、比较、连接、提取、查询; 掌握分割字符串、大小写转化等操作的方法; 掌握 StringBuffer 对象的常用方法 append()、delete()等; 理解 String 和 StringBuffer 的区别;学习任务1.任务描述设计实现了一个天气预报的数据处理的功能,能提供在线的信息编辑处理,比如插入删除和修改,以及查找、替换等功能。对天气预报数据处理要求为:1) 将每日的天气用字符串数组表示;2) 将每日的天气用转为可编辑字符串数组表示;3) 将每日的天气每个空格处替换为,,在日期前加序号格式为 1、2、等

    2、;4) 获得第 5 日夜间的温度。2.运行结果5 日星期一 白天 多云 高温 11 微风夜间 晴 低温 2 微风6 日星期二 白天 晴 高温 15 微风夜间 晴 低温 4 微风1、5 日星期一,白天,多云,高温,11,微风夜间,晴,低温,2,微风 3 级2、6 日星期二,白天,晴,高温,15,微风夜间,晴,低温,4,微风 3 级5 日夜间温度:温度:2知识准备10.1 创建 String 字符串Java 中字符串是一连串的字符。但是与许多其他的计算机语言将字符串作为字符数组处理不同,Java 将字符串作为 String 类型对象来处理。将字符串作为内置的对象处理允许 Java 提供十分丰富的功

    3、能特性,以方便处理字符串。字符串是由字符组成的序列,用双引号引起来。JAVA 语言提供了两种字符串类。一类是不可变的字符串 String,另一类是可变的字符串 StringBuffer。创建字符串方式归纳起来有三种:第一种,使用 new 关键字创建字符串。例如:String s1 = new String(山东商业职业技术学院);第二种,直接指定。天气预报信息处理程序设计天气预报信息处理程序设计例如:String s2 = 山东商业职业技术学院;第三种,使用串联生成新的字符串。例如:String s3 = 山东商业职业学院 + 信息技术学院;10.2 String 类的常用操作String 类

    4、包括的方法有:求字符串长度;比较字符串;搜索字符串;提取子字符串等。String 表示一个 UTF-16 格式的字符串。10.2.1 计算字符串长度使用 length() 方法获得字符串中字符的个数。例如:String title=”山东商业职业技术学院”;System.out.println(title.length();打印得到字符串的长度为:10。10.2.2 比较两个字符串对象的内容使用方法 equals(Object anObject) 比较此字符串与指定的对象。当且仅当该参数不为 null,并且是表示与此对象相同的字符序列的 String 对象时,结果才为 true。例如:Stri

    5、ng title1=”山东商业职业技术学院”;String title2=”山东商业职业技术学院信息技术学院”;System.out.println(title1.equals(title2)打印输出 false。10.2.3 获得指定位置的字符使用方法 charAt(int index) 返回指定索引处的 char 值。索引范围为从 0到 length() - 1。序列的第一个 char 值在索引 0 处,第二个在索引 1 处,依此类推,这类似于数组索引。例如:String title=”山东商业职业技术学院信息技术学院”;System.out.print(title.charAt(0);/

    6、输出字符山System.out.print(title.charAt(title.length()-1);/输出字符院天气预报信息处理程序设计10.2.4 返回字符串第一次出现的位置使用方法 indexOf(String str)返回第一次出现的指定子字符串在此字符串中的索引。例如:String title=”山东商业职业技术学院信息技术学院”;title.indexOf(“商业”);/得到“商业”字符串的位置是 210.2.5 获取子串使用 substring(int beginIndex, int endIndex) 方法返回一个新字符串, 它是此字符串的一个子字符串。例如:String

    7、title=”山东商业职业技术学院信息技术学院”;title.substring(11,15);/获得内容为“信息技术”的子字符串10.2.6 拆分字符串使用方法 split(String regex)按照给定的字符串拆分此字符串。例如:String title=”山东商业职业技术学院 信息技术学院”;String data=new String2;title.split(“ ”);System.out.println(data0);System.out.println(data1);打印“山东商业职业技术学院”和“信息技术学院” 。10.2.7 忽略前导空白和尾部空白使用 trim()方法返

    8、回字符串的副本,忽略前导空白和尾部空白。例如:String greeting=”你好! ”;String name=”王先生”;String title=greeting.trim()+name;/title 为:你好!王先生10.2.8 替换旧的字符为新字符方法 replace(char oldChar,char newChar)返回一个新的字符串,它是通过用newChar 替换此字符串中出现的所有 oldChar 得到的。例如:String title=”山东商业职业技术学院信息技术学院”;title.replace(山,广);10.2.9 StringBuffer 对象的创建String

    9、Buffer 类和 String 一样,也用来代表字符串,只是由于 StringBuffer的内部实现方式和 String 不同,所以 StringBuffer 在进行字符串处理时,不生成新的对象,在内存使用上要优于 String 类。所以在实际使用时,如果经常需要对一个字符串进行修改,例如插入、删除等操作,使用 StringBuffer 要更加适合一些。但是有一个最显著的区别在于,对于但是有一个最显著的区别在于,对于 StringBuffer 对象的每次修改都会对象的每次修改都会改变对象自身,这点是和改变对象自身,这点是和 String 类最大的区别。类最大的区别。StringBuffer

    10、类位于 java.lang基础包中,因此要使用它的话不需要特殊的引入语句。10.3 StringBuffer 类的常用方法10.3.1 StringBuffer()StringBuffer 类的构造方法构造一个其中不带字符的字符串缓冲区,其初始容量为 16 个字符。创建了不包含任何文本的对象,默认的容量是 16 个字符。例如:StringBuffer sb = new StringBuffer();10.3.2 StringBuffer(String str)使用该方法构造一个字符串缓冲区,并将其内容初始化为指定的字符串内容。例如:StringBuffer sb1 = new StringBu

    11、ffer(123);10.3.3 append(String str)使用该方法将指定的字符串追加到此字符序列。例如:String user = test;StringBuffersqlquery=newStringBuffer(select*fromuserInfowhereusername=);sqlquery.append(user );System.out.println(sqlquery.);打印输出:select * from userInfo where username=test10.3.4 insert(int offset, String str)使用该方法将字符串 str

    12、 插入字符序列中。天气预报信息处理程序设计例如:String title=”山东信息技术学院”;title.insert(2,”商业职业技术学院”);title 得到的信息为“山东商业职业技术学院信息技术学院”10.3.5 toString()使用该方法返回此序列中数据的字符串表示形式。例如:StringBuffer sb2 = new StringBuffer(s);/String 转换为 StringBufferString s1 = sb1.toString(); /StringBuffer 转换为 String10.3.6 replace(int start, int end, Str

    13、ing str)使用该方法将字符串中的从 start 开始到 end-1 结束的字符串替换为子字符串 str。例如:String title=”山东信息技术学院”;title.replace(0,2,”深圳”);System.out.print(title);打印 title 的信息是“深圳信息技术学院”10.3.7 substring(int start, int end)使用该方法返回一个新的 String,它包含此序列当前所包含的字符子序列。例如:StringBuffer sbx4 = new StringBuffer(hello world!);System.out.println(s

    14、bx4.substring(6, 11).toString();打印结果为 world10.3.8 delete(int start, int end)使用该方法移除此序列的子字符串。例如:StringBuffer sbx1 = new StringBuffer(TestString);sbx1.delete (0,4);System.out.println(sbx1);打印输出:Test任务实施1实现思路字符串 String 提供了很多方法可以求长度、查找、替换、去掉首尾空格等。StringBuffer 提供了追加和删除、插入操作。 解决问题的步骤:先定义一个变量存放字符串,然后使用字符串的

    15、相关方法实现。在定义一个 StringBuffer 类型的变量来编辑处理天气信息字符串。打开 Eclipse,创建一个类 WeatherForcast;声明一个 String 类的对象 WeatherForcast;利用 String 类的求长度、查找子字符串,并将天气预报的内容按天分为两个String 对象;用数组表示两个 String 对象;利用 String 类实现查找替换获取长度等操作;利用 StringBuffer 实现追加和删除等操作;2.程序代码public class WeatherForcast public static String splite(String weath

    16、erData, StringdateOfWeather) String eachDayOfReport = new String2;/ 存放每天的天气情况eachDayOfReport = weatherData.split(dateOfWeather);eachDayOfReport1 = dateOfWeather + eachDayOfReport1;return eachDayOfReport;public static void getNightTemperature(String data, String night) int begin = data.indexOf(night)

    17、;int end = 0;for (int i = 0; i 3; i+) / 向后移3个,,返回索引begin = data.indexOf(, begin + 1);end = data.indexOf(, begin + 1);System.out.println(温度: + data.substring(begin + 1, end);/ 显示夜间温度/ 获得夜间温度public static void main(String args) String weatherforcast = 5日星期一 白天 多云 高温 11 微风 +夜间 晴 低温 2 微风+6日星期二 白天 晴 高温 1

    18、5 微风 + 夜间 晴 低温 4微风;String eachDayOfReport = new String2;/ 存放每天的天气eachDayOfReport = splite(weatherforcast, 6日);天气预报信息处理程序设计for (int count = 0; count eachDayOfReport.length; count+)System.out.println(eachDayOfReportcount);StringBuffer stb = new StringBuffer(eachDayOfReport0),new StringBuffer(eachDayOf

    19、Report1) ;/ 创建可编辑字符串数组for (int i = 0; i stb.length; i+) String modifiedText = (stbi.toString().replaceAll( , ,);stbi.replace(0, stbi.capacity(), );stbi.append(modifiedText);/ 追加修改后的文本stbi.append(3级);/ 追加微风3级int b = stbi.toString().indexOf();stbi.delete(b, b + .length();/ 删除第一个stbi.insert(0, Integer.

    20、toString(i + 1) + 、);/ 插入序号System.out.println(stbi.toString();System.out.print(5日夜间温度:);getNightTemperature(stb0.toString(), 夜间);/ 获得5日夜间温度任务拓展Java 语言中,提供了专门用来分析字符串的类 StringTokenizer(位于java.util 包中) 。该类可以将字符串分解为独立使用的单词,并称之为语言符号。语言符号之间由定界符(delim)或者是空格、制表符、换行符等典型的空白字符来分隔。其他的字符也同样可以设定为定界符。StringTokeniz

    21、er 类的构造方法StringTokenizer(String str, String delim)为字符串 str 构造一个字符串分析器,并使用字符串 delim 作为定界符。 StringTokenizer 类的主要方法及功能 String nextToken() 用于逐个获取字符串中的语言符号(单词) 。 boolean hasMoreTokens() 用于判断所要分析的字符串中,是否还有语言符号,如果有则返回 true,反之返回 false。 int countTokens() 用于得到所要分析的字符串中,一共含有多少个语言符号。【实例 3-8】使用 StringTokenizer 统

    22、计单词的个数。【源代码】import java.util.StringTokenizer;天气预报信息处理程序设计public class WordCounting public static void main(String args) int count = 0;String content = This is a test. Please be honesty!;StringTokenizer st = new StringTokenizer(content, .! );while (st.hasMoreTokens() System.out.println(st.nextToken();count+;System.out.println(单词个数: + count);该程序产生的输出如下:ThisisatestPleasebehonesty单词个数:7任务实训1.实训目的 掌握 Java 中字符串的创建和使用; 熟悉字符串的常见操作及方法; 熟悉 StringBuffer 类的方法。2.实训内容使用作业提交系统提交 Java 作业时,需要输入 Java 源代码文件名,并输入自己的邮箱,提交前对 Java 文件名以及邮箱有效性进行检查。编写代码实现对输入的 Java 源文件名以及邮箱有效性的检测。天气预报信息处理程序设计

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:Java程序设计资料:单元10 String与StringBuffer.doc
    链接地址:https://www.163wenku.com/p-2047629.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库