《Java程序设计案例教程》教学课件06数组和字符串.pdf
《《Java程序设计案例教程》教学课件06数组和字符串.pdf》由会员分享,可在线阅读,更多相关《《Java程序设计案例教程》教学课件06数组和字符串.pdf(45页珍藏版)》请在咨信网上搜索。
1、模块6数组和字符串r学习目标掌握一维数组的定义和使用。了解二维数组及多维数组的定义和使用。了解对象数组的使用。了解Arrays类中相关方法的使用。掌握字符串的定义和相关操作。了解动态字符串的相关操作。06技能目标能够在MyEdipse IDE中定义和使用一维数组及读懂二维数组代码。01能够在MyEclipse IDE中编写并运用对象数组。02能够在MyEclipse IDE中应用Arrays类操作数组。03能够在MyEclipse IDE中应用String类及StringBuffer类操作字符串。046回顾与思考通过模块4和模块5的学习,我们可以编写具有一定规模的Java程序了。模块2还 提及
2、了一个尚未详细分析的引用数据类型:数组。本模块我们将系统学习数组的特 性及其应用。在前面的模块中学习的数据类型,无论是基本数据类型,还是引用数据类型,都 有一个共同特点:其所操作的都是单个数据。例如,需要计算100个学生某门课的平 均成绩,若按照前面所学的方法,则必须定义100个变量以存放100个学生的成绩。如果再要求输出所有学生的成绩,就不得不在程序中再次写出100个变量名。如此规 模的变量存在,显然不利于数据处理。那么,应该采取什么样的方法来解决这个问 题呢?6.2数组数组是数量一定、类型相同 的数据按顺序组成的一种引用数 据类型。数组中的数据被称为数 组的元素。6.2数组_6.2.1 一
3、维数组1.数组的定义定义数组首先要声明数组,其基本语法格式如下。数据类型数组名;或 数据类型数组名;其中,表示声明的是数组变量,而不是单个数据变量。数组声明后还 不能立即被访问,因为还没有为数组分配内存空间,所以接着要创建数组。创建数 组的基本语法格式如下。数组名二new数据类型数组长度;6.2数组_6.2.1 一维数组心2.数组的使用通过一个整数下标或一个整数表达式下标,可以访问数组的每一个元素。语法格式如下O 数组名下标下标从0开始不间断地向上排序。例如,i 4 代表数组的第5个元素。每个数组都有一个length属性指明数组的长度,也就是数组所能容纳元素的数 量。语法格式如下。数组名.le
4、ngth6.2数组_6.2.1 一维数组 2.数组的使用【例61】在一个有8个整数12,29,7,35,18,2,81,65的数组中找出其中 的最小值及其下标。文件名为Example6_l.java,其代码如下。package ch6.example;public class Example6_l/*例6-1找出数组的最小值及其下标*authorJava程序设计案例教程*vers ion 1.0public static void main(String口 args)int myArray=12,29,7,35,18,2,81,65int min=myArrayCo;/min 存放最小值int
5、 index=0;/index存放最小值的下标for(int i=1;i V myArray.length;i+)if(myArrayV min)min myArrayi;*/index=i;6.2数组_6.2.1 一维数组心2.数组的使用【例6.1】System.out.println(数组中最小的数是:+min+”,其下标为:+index);运行结果如下。数组中最小的数是:2,其下标为:56.2数组_6.2.2 二维及多维数组Java中并不直接支持多维数组。所以,多维数组的定义是通过对一维数组的嵌套式定义来实 现的,即用数组的数组来定义多维数组。以二维数组为例,其定义方式有以下两种。(1)
6、一步完成二维存储空间分配,其基本语法格式如下。数据类型数组名=new数据类型高维数组长度低维数组长度;或数据类型数组名=new数据类型高维数组长度低维数组长度;6.2数组_6.2.2二维及多维数组(2)分别为每一维分配存储空间,但注意必须从高维到低维进行。其基本语法格式分为如 下两步。数据类型口数组名=new数据类型高维数组长度1口;数组名0=new数据类型低维数组长度1;数组名1=new数据类型低维数组长度1;数组名高维数组长度一口=new数据类型低维数组长度上其中,各候暖组长度的取值可以不一样。以!i=new int2口;/高维数组的长度 i.length 为 2i0=new int3;/
7、低维数组亚0的长度 i0.length 为 3il=new int4;/低维数组 il的长度 il.length 为 46.2数组_6.2.2二维及多维数组【例62】输出一个多级的杨辉三角形,级数由用户从控制台输入。文件名为Example6_2.java,其代码如下。package ch6.example;import java.util.Scanner;public class Example6_2/*例6-2杨辉三角形*authorJava程序设计案例教程*version 1.0*/public static void main(String口 args)Scanner sc=new Sc
8、anner(System,in);System.out.print(输入杨辉三角的级数:”兀 int level=sc.nextInt();y=new intlevel1口;行数int i,j;for(i=0;i C y.length;i+)=new inti+1;列数y00=1;第一行第一列元素for(i=1;i y.length;i+)6.2数组_6.2.2二维及多维数组【例62】yi=new inti+1;列数voo 1;第一行第一列元素for(i=1;i V y.length;i+)yEio=1;从第二行开始所有第一列所有元素for(j=l;j yi.length l;j+)从第三行开
9、始=yi lj 1+yi 第一列和对角线之外元素 丫口兀正口.length 1=1;从第二行开始所有对角线元素)运行结果如下。for(i=0;i y.length;i+)输出for(j=0;j V yi.length;j+)System,out.print(yij+);Sys ton.out.println();输入杨辉三角的级数:511 112 113 3 11 4 6 4 106.3对象数组组成数组元素的数据类型除了基本数据类 型以外,还包括引用数据类型。对象数组是由 同一个类的若干个实例组成的有序数据集合。对象数组可以用来处理更为复杂的数据类型。6.3对象数组【例63】以【例6-1】中的
10、整数型数组12,29,7,35,18,2,81,65为半径,创建相应的圆,再按从小到大的顺序输出圆的周长和面积。运行结果如下。_ 其代码见P131-132。圆的周长依次为:12 43 75 113 182 219 408 508圆的面积依次为:12 153 452 1017 2642 3848 13273 20611 6.4 Arrays类0)0J DK提供了一个专门用于操作数组的 Arrays类,该类位于java.util包中。Arrays类提供了许多静态方法来操作数组,如排序、比较、复制、搜索等。用户可以 直接调用这些方法,而不需要具体编写代 码去操作数组,这大大提高了开发效率。6.4 A
11、rrays类【例6修改【例6-3】,用Arrays类中相关的方法对数组进行排序操值文件名Example6_4.java,其代码如下。_ 其代码见P132-133。Arrays类的sort。方法将通过 参数输入的数值型的数组元素按 从小到大的顺序进行排序,运行 结果参考【例6-3的运行结果。6.5字符串操作6.5.1字符串的表示和生成方法可以通过String类提供的构造方法创建字符串对象。例如,Stringstr二new StringCxxx)/o其中,xxx代表所创建字符串对象的值。String类有一个特点,就是即使程序中不用new关键字,Java编译系统 也能从String类生成一个对象。例
12、如,String str二 xxx”;语句中,虽然没有用new关键字,但是仍然生成了一个字符串对象st%这种字符串对象的生成方式因为简洁、方便而被广泛使用。6.5字符串操作6.5.2字符串的访问(lJengthO 方法)通过调用length。方法可得到字符串的长度。例如:String str二”南京交通职业技术学院”;int length=str.length();length的值为10。6.5字符串操作6.5.2字符串的访问(2.charAt(int index)方法charAt(int index)方法用于取出字符串某一特定位置的字符。例如:String str=南京交通职业技术学院”;c
13、har c=str.charAt(2);c的值为交。在Java中,对字符 串中字符的检索是从0位开始计算的。6.5字符串操作6.5.2字符串的访问(3.startsWith(String prefix)方法:startsWith(Str ing prefix)方法用 于确定在字符串的 开头是否含有一个 给定的字符串前缀String str=南京交通职业技术学院”;boolean b=str.startsWith(“南京)b的值为true,因为str是以南京开头的。o例如:6.5字符串操作6.5.2字符串的访问4.endsWith(String suffix)方法endsWith(Stri ng
14、 suffix)方法用于 确定字符串是否以 给定的字符串结尾 o例如:String str=南京交通职业技术学院”;boolean b=str.endsWith(技术)b的值为false,因为str不是以技术结尾的。6.5字符串操作6.5.2字符串的访问(5.indexOf(String str)方法如果想确定字符串中字符或子串的位置,可以使用indexOf(String str)方法。如果检索到存在的字符或子串,将返回一个代表位置的整数,否则返回值为-1。indexOf(String str)方法 返回字符或子串首次出现的位置。例如:String str=南京交通职业技术学院”;int in
15、dex=str.indexOf(职 业);/index 的值为 4int index=str.indexOf(通);/index 的值为 3int index=str.indexOf(通业”);/index 的值为一16.5字符串操作6.5.2字符串的访问(6.lastIndexOf(String str)方法)lastIndexOf(String str)方法返回字符或子串最后一次出现的位置。例如:String str=”南京交通职业技术学院智能交通”;int index=str.lastlndexOf(交通)index的值为12。6.5字符串操作6.5.2字符串的访问(7.substrin
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java程序设计案例教程 Java 程序设计 案例 教程 教学 课件 06 数组 字符串
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【曲****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【曲****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。