Java语言基础教程 教学课件 ppt 作者 沈昕 1_ 04

上传人:E**** 文档编号:89400523 上传时间:2019-05-24 格式:PPT 页数:33 大小:134KB
返回 下载 相关 举报
Java语言基础教程 教学课件 ppt 作者  沈昕  1_ 04_第1页
第1页 / 共33页
Java语言基础教程 教学课件 ppt 作者  沈昕  1_ 04_第2页
第2页 / 共33页
Java语言基础教程 教学课件 ppt 作者  沈昕  1_ 04_第3页
第3页 / 共33页
Java语言基础教程 教学课件 ppt 作者  沈昕  1_ 04_第4页
第4页 / 共33页
Java语言基础教程 教学课件 ppt 作者  沈昕  1_ 04_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《Java语言基础教程 教学课件 ppt 作者 沈昕 1_ 04》由会员分享,可在线阅读,更多相关《Java语言基础教程 教学课件 ppt 作者 沈昕 1_ 04(33页珍藏版)》请在金锄头文库上搜索。

1、第4章 数组和方法,4.1 数据结构和数组,4.1.1 数据结构,(1)数据 (2)数据元素 (3)数据对象 (4)关键数据项 (5)数据类型,4.1.2 一维数组,(1)数组是相同数据类型元素的集合。 (2)数组中的各个元素在内存中按照先后顺序连续存放在一起。,1数组,(3)每个数组元素用其所在数组的名字和其在数组中的顺序位置表示。例如,major0代表变量名为major的数组中的第一个元素,major1代表变量名为major的数组中的第二个元素,依此类推,majorn代表数组major中的第n+1个元素。 (4)数组的下标值是从0开始的,其可以是int类型的数据、变量和算术表达式。例如,m

2、ajori、numbers2*5都是合法的下标值。 (5)每个数组都有长度,也就是其所能含有的元素的个数。,(1)在使用数组之前必须先声明数组。声明数组主要是声明数组的名称和数组中元素的数据类型,其格式有两种: 数组元素类型 数组名称; 数组元素类型 数组名称 ; 其中,数组名称必须符合Java语言标识符规则。,2创建数组,例如,下面的声明语句都是合法的。 String major ; int numbers; 声明数组的目的只是告诉系统一个新的数组的名称和类型,现阶段的数组还没有保存任何数组元素,数组值为null。,(2)使用关键字new来指定数组的长度,并分配相应的内存空间,其格式为: 数

3、组名称 = new数组元素类型元素个数; (3)按照顺序依次给每个元素赋值。 (4)还可以在声明数组的同时直接给数组赋初值,初值的个数是数组的长度。,复制数组的方法与复制普通变量的方法不同,分为两种情况。 (1)两个数组指向同一个元素空间,也就是说声明并创建了一个数组,其在内存中具有一定的空间,然后又声明了一个数组,让其同样表示该内存空间中的数组元素。,3复制数组,(2)两个数组指向内容完全相同的两个元素空间。如果要真正复制一个数组,使得在修改复制数组的值时,不会影响到原数组的值,则需要声明一个和原数组长度相同的数组,然后再把原数组中的元素一一复制给新的数组。,4.1.3 二维数组,(1)在使

4、用二维数组之前必须先声明二维数组。声明二维数组主要是声明二维数组的名称和数组中元素的数据类型,其格式有两种: 数组元素类型 数组名称; 数组元素类型 数组名称 ;,1创建二维数组,(2)使用关键字new来指定数组的长度,并分配相应的内存空间,其格式有两种: 数组名称 = new数组元素类型元素个数1元素个数2; 数组名称 = new数组元素类型元素个数1 ;,(1)按照顺序依次给每个元素赋值。 (2)在声明数组的同时直接给数组赋初值,初值的个数是数组的长度。 (3)二维数组的长度 二维数组的长度是指行数的个数,二维数组每行的长度是指每行的元素个数。,2给二维数组赋值,4.1.4 排序,(1)选

5、择排序法 选择排序法的排序原则:首先将一组无序的数字排列成一排,再将其最大的数字与最后一个数字交换位置,最大数字成为已排序数字。然后将剩下的未排序数字中最大的数字与最后一个未排序数字交换位置,成为已排序数字。重复上面的步骤,直到所有数字都成为已排序数字。,(2)插入排序法 插入排序法的排序原则:将一组无序的数字排列成一排,左端第一个数字为已经完成排序的数字,其他数字为未排序的数字。然后从左到右依次将未排序的数字插入到已排序的数字中。,(3)冒泡排序法 冒泡排序法的排序原则:首先将一组无序的数字排列成一排。再从左端开始将相邻两个数字做比较,如果左边的数字比右边的数字大,则交换其位置。一轮比较完成

6、后,最大的数字会在数列最后的位置上“冒出”。重复比较和交换剩下未排序的数字,直到全部数字“冒出”。,(4)合并排序法 合并排序法的排序原则:将一排数字分成两部分,然后再将这两部分各自又分成两部分,一直到每个部分都是一个数字。然后再将分开的两个数字按照从小到大或者从大到小的顺序进行合并。进行同样操作依次合并所有之前分开的部分,最终合成为一个排序好的数列。,(5)快速排序法 快速排序法的排序原则:首先选中一排数字中的任意一个数(一般为第一个数字),然后通过比较和交换数字,使该数字左边的数字都比其小,该数字右边的数字都比其大。这样该数列就分成了左右两个未排序的部分和中间已排序的部分。再把未排序的部分

7、按照同样的方法进行排序,最终完成整个数列的排序。,4.2 方 法,4.2.1 方法,声明方法的形式有多种,这里介绍最基本的格式。 方法类型 方法名称( 参数列表 ) 语句体 ,1声明方法,声明方法时要注意以下4点。 (1)方法类型也就是方法返回值的类型,它可以是任何数据类型,但是必须与方法中return语句内的返回数值类型保持一致。如果方法没有返回值,则方法的类型为void。例如,Java应用程序中main( )方法的类型就是void,表示该方法没有返回值。 (2)方法名称要符合Java标识符的规则。,(3)方法名称后面的小括号中,可以有参数,也可以没有参数。当参数为多个时,要用逗号隔开。每个

8、参数都必须声明类型和名称,类型可以是任何数据类型。 (4)方法中的语句体用来处理方法参数、类的全局变量和方法本身的局部变量。最后将结果通过return语句返回,或者不返回任何值,只是完成指定的操作。,(1)void类型方法的调用格式为: 方法名称( 参数列表 ); 例如,repaint( );语句。 (2)其他类型方法的调用格式为: 变量=方法名称(参数列表);,2调用方法,return语句在方法中的作用是终止当前方法的执行,返回到调用该方法的语句处,并继续向下执行语句。return语句有如下两种格式。,3return语句,(1)return 表达式; 计算表达式的值,然后将该值返回到调用该方

9、法的语句中。Java语言要求返回值(也就是表达式的值)必须与声明方法中的方法类型一致。,(2)return; 当方法的类型为void,不需要返回值时,可以使用这种格式终止方法的执行,并返回到调用该方法的语句处,继续执行下面的语句。这种格式一般用于if语句或者switch语句等选择结构。,变量的作用范围是由其被声明的位置决定的。根据变量被声明的位置不同,可以分成全局变量(Global Variable)和局部变量(Local Variable)。 (1)全局变量是在类中但不在任何方法内声明的变量。全局变量可以在整个类中包括类的所有方法中使用。,4变量和常量的作用范围,(2)局部变量是在类中的某个

10、方法内声明的变量。局部变量只可以在其声明的方法内使用。如果要在其他方法内或类中使用,则会产生错误。,4.2.2 方法的应用,1方法的参数,参数是在调用方法的同时,传递给方法的数据,用于方法中的语句体。调用方法时所传递的参数类型、参数顺序和参数个数必须与方法中的参数类型、参数顺序和参数个数一致。,2方法重载,方法的重载是指在同一个类中,声明方法名称相同但参数不同的多个方法。当调用某个重载的方法时,Java会根据参数的类型、个数和顺序的不同,调用与之相符的方法。,4.2.3 递归思想,1递归,采用恰当的递归方式可以大大地减少程序的语句数量。递归是由递归出口和递归表达式两大部分组成的。,(1)递归出

11、口是递归结束的条件,也就是最终变成的简单问题。这个简单问题的解决方法必须是已经知道的,或者是已经给出了计算结果。例如,在求费波纳契数列时,其递归出口为第一和第二个数的值为1。,(2)递归表达式是从递归出口到最终复杂问题的转化规律。例如,在求费波纳契数列时,其递归表达式为一个数是其前两个数字之和,并且第一和第二个数的值为1。,2在Java语言中实现递归,Java程序中的方法能够具有递归功能,主要是通过参数和方法调用自身方法来实现的。 (1)参数是控制整个递归进程的关键。它相当于递归的数学表达式中的条件。例如费波纳契数列数学表达式中的n,阶乘数学表达式中的N。当条件不同时,计算的方式和结果也不同。,(2)方法调用自身方法是实现递归的过程。在调用自身方法时,一定要保证随着每一次的调用,方法的参数值越来越接近递归结束的条件。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号