- 1
- 0
- 约7.06千字
- 约 21页
- 2015-12-24 发布于广东
- 举报
数据结构(Java语言版) 人民邮电出版社 【知识要点】 通过本章内容学习,掌握的主要内容有: 串的基本概念; 串的顺序存储和链式存储及特点; Java语言中串的基本操作及实现。 第一节 实例引入 【例6.1】打字游戏软件。如图6.1所示是一个常见的打字游戏针对单词练习的界面,当用户正确输入字符串表示的单词时,青蛙就可跳到相应位置处,青蛙可通过某一系列位置跳到河岸对面。 第二节 串的概述 【例6.2】比较串tong和too。 串比较时,其索引值从0开始,即第一个字符索引位置为0,后面依次为1,2,...,n。其比较过程如图6.2所示: 图6.2 串的比较 在串中,任意一个连续字符组成的子序列称为该串的子串。包含子串的串相应地被称为主串。通常将子串在主串中首次出现时,对应主串第一个元素的索引位置,称为该子串在主串中的索引位置,其索引值是子串的第一个字符在主串中的索引位置。 【例6.3】设有S1和S2两个串,分别为 S1= This is a string S2= is 通过判断可知,S2是S1的子串,且S2在S1中出现了两次。其中首次出现对应的主串位置索引是2,因此,称S2在S1中的索引或位置是2。 根据定义,有如下规定: 空串是任意串的子串,空串在主串的第一次出现时索引值为0。 任意串是其自身的子串,在主串的第一次出现时索引值为0。 字符串可以分为常量和变量,在Java语言中,串是通过java.lang.String类来实现的,它是一个Java API类;串变量仅仅是该类的一个实例化对象,在Java语言中,定义串变量如下: String S1= This is a String. ; String S2= Java Programming Language ; 在Java语言中,串的常量是由双引号括起来的字符序列。例如:string 123 ,This is a string ,等都是字符串常量。 第三节 串的顺序存储结构 串的存储结构分为顺序存储和链式存储。 串的顺序存储结构,就是在内存中用一段连续的存储单元存储字符序列,如图6.3所示,因此可通过数组实现,而在Java语言中常用的串存储结构就是顺序存储结构。 图6.3 串的顺序存储 根据串的操作,可将串分为静态字符串和动态字符串两种。静态字符串是指对串的操作不能进行插入、删除等改变串结构的操作,只能进行查询、求其长度等不改变串结构的操作。动态字符串是指对串进行操作时,可以对数据元素进行插入、删除等改变串结构的操作。 6.3.1 通过string类处理串 1.构造字符串 (1)直接赋值方式: String str=Hello Java; //直接赋值方式 String str1=new String(Hello Java); //通过常量字符串构造一个新的字符串对象 String str2=new String(); //构建一个空串,不是null (2)利用字符串数组或字符数组构造字符串方式。按照字节数组以及字符数组构造一个字符串对象分别如下: 利用字符串数组构造一个新的字符串对象: byte[] b = Hello Java.getBytes(); String strb = new String(b); 利用字符数组构造一个字符串对象: char[] c = new char[]{H, e, l , l , o , , J , a , v , a}; String strch = new String(c); 2.获取指定索引位置处的字符 方法:public char charAt(int index) 功能:返回索引index处的字符,当指定参数不在字符串索引值范围内时显示IndexOutOfBoundsException异常。 【例6.4】获取字符串 Hello Java 索引位置为6的字符。 String s=Hello Java; int iLocation=s.charAt(6); 程序运行后iLocation值为J。 3.比较两个字符串的大小 方法:public int compareTo(string anotherString) 功能:比较两个字符串的大小,当前面字符串string比后面字符串
您可能关注的文档
- 数据库应用与开发教程(ADO.NET+SQL Server 单元07 用T-SQL增加测试数据和事务控制新.ppt
- 中文Dreamweaver CS5网页设计 沈大林 张伦_ 第9章 动态网页基础新.ppt
- 数据库应用与开发教程(ADO.NET+SQL Server 单元09 编号与树形数据新.ppt
- 中文Dreamweaver MX案例教程 杜金 等 第2章 网页中的文字、图像和导航条新.ppt
- 数据库应用与开发教程(ADO.NET+SQL Server 单元11 自动业务处理新.ppt
- 中文Dreamweaver MX案例教程 杜金 等 第3章 框架、表格与层新.ppt
- 数据库应用与开发教程(ADO.NET+SQL Server 单元12 数据库安全与系统部署新.ppt
- 中文Dreamweaver MX案例教程 杜金 等 第4章 表单、样式表与网页布局新.ppt
- 数据库应用与开发教程(ADO.NET+SQL Server 单元13 数据库管理与美化界面新.ppt
- 中文Dreamweaver MX案例教程 杜金 等 第5章 时间轴和网页中的其他对象新.ppt
最近下载
- 年产2万吨碳酸锂项目(吸附剂车间竣工环保验收监测调查报告.docx VIP
- 2025年高考湖南卷物理真题试卷.pdf VIP
- 生物安全培训.doc VIP
- 圣兴化工年产1万吨硝酸镁、2万吨水溶肥、1万吨硝酸钙、2万吨太阳能熔盐、5万吨农业(工业)硝酸钾及5.4万吨氯化镁溶液项目环评.doc VIP
- DB37T 4983—2025 无人机半航空瞬变电磁探测技术规程.pdf
- 2026春沪教版七年级英语下册单词衡水体字帖.pdf VIP
- 25HNTJ026 锯齿形装配式混凝土剪力墙结构施工图制图规则及构造详图 T_HNKCSJ 025-2025.docx VIP
- 25HNTJ025 刚节点装配式混凝土框架结构施工图制图规则及构造详图 T_HNKCSJ 024-2025.docx VIP
- 25HNTJ025 低能耗集成装配式多层房屋构造 T_HNKCSJ 023-2025.docx VIP
- 催眠引导语合集元式催眠.docx VIP
原创力文档

文档评论(0)