Java第6章PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第6章 数 组
6.1 一维数组 6.2 一维数组引用举例 6.3 二维数组 6.4 二维数组的引用
1
6.1 一 维 数 组
6.1.1 一维数组的声明 数组的声明格式如下: 类型标识符 数组名[ ]; 或 类型标识符[ ] 数组名;
说明:数组元素的数据类型可以是Java的任何数据类型,如基 本类型(int、float、double、char等),类或接口等。
8
for(i=0;i<len;i++)
System.out.print(" "+arX[i]);
System.out.println("\n arY的原始数据");//打印Y数组
for(i=0;i<len;i++)
System.out.print(" "+arY[i]);
p1.add(arX,arY); //调用add方法计算两个数组之和 System.out.println("\n 再次输出arX");
【示例程序c6_7.java】 有两个一维数组s1和s2,s1存放着8 名学生的成绩,s2存放着5名学生的成绩,分别求出这两组学生 的平均成绩。 public class c6_7{
6.2 一维数组引用举例
6.2.1 测定数组的长度 6.2.3 数组间相互赋值
4
6.2.4 向成员方法传递数组元素 向成员方法传递数组元素也就是用数组元素作为成员方法
的实参。由于实参可以是表达式,而数组元素可以是表达式的 组成部分,因此,数组元素可以作为成员方法的实参。数组元 素作为成员方法的实参与用变量作为实参一样,是单向值传递, 即只能由数组元素传递给形参,程序中对形参的任何修改并不 改变数组元素的值。
for(i=0;i<len;i++) System.out.print(" "+arX[i]);
System.out.println("\n 再次输出arY"); for(i=0;i<len;i++)
System.out.print(" "+arY[i]); System.out.println("\n"); }
运行结果: arX的原始数据
1376 arY的原始数据
78 0 42 5 再次输出arX
1376 再次输出arY
79 3 49 11
}
9
6.2.6 同类型不同长度的数组引用同一个成员方法 在Java语言中,数组也是一种对象,因此,只要数组元素
的数据类型相同,而不论其长度是否一致,都可以引用同一个 成员方法,完成所需要的操作。
后的一对花括号内,给这个数组的所有数组元素赋上初始值。 例如:int[ ] a1={23,-9,38,8,65};
2.用关键字new初始化数组
(1) 先声明数组,再初始化数组。 类型标识符 数组名[ ]; 数组名=new 类型标识符[数组长度];
(2) 在声明数组的同时用new关键字初始化数组。相当于将上 面所述的两条语句合并为一条语句。格式如下:
public class c6_5{
public static void main(String[ ] args){ int arr[ ]={6,8,9}; //声明并初始化数组arr
int len=arr.length, k;
ff p1=new ff( );
k=p1.aa(arr[0],arr[1]);//arr[0]和arr[1]为方法aa的实参
【示例程序c6_5.java】 数组元素作为成员方法的实参,在 成员方法中改变形参x和y的值,方法调用结束后实参数组元素 的值没有改变。
5
class ff{
int aa(int x,int y){
inΒιβλιοθήκη Baidu z;
运行结果:
x=x+4;y=y+2; z=x*y; return z; k=100
} }
689
6.1.2 一维数组的初始化 声明一个数组仅仅为这个数组指定数组名和数组元素的类
型,并不为数组元素分配实际的存储空间。在Java程序中把这 一工作放在数组的初始化时进行。数组经过初始化后,其长度 (即可存放的元素个数)就不可再改变。 初始化方式: 直接指定初值和用new操作符两种方式。
2
1.直接指定初值的方式 在声明一个数组的同时将数组元素的初值依次写入赋值号
【示例程序c6_6.java】 两个数组相加,将结果存入第二个 数组中。
7
class Add1Class{ void add(int arA[ ],int arB[ ]){ int i; int len=arA.length; for(i=0;i<len;i++) arB[i]=arA[i]+arB[i]; }
System.out.println("k="+k);
for(int i=0;i<len;i++)
System.out.print(" "+arr[i]);
System.out.println("\n");
}
}
6
6.2.5 向成员方法传递数组 在定义成员方法时可以用数组作为它的形参,且只指定数
组名和它的数据类型,而不指定数组的长度。在这种情况下引 用该成员方法时,必须用具有相同数据类型的数组名作为成员 方法对应位置的实参,即向成员方法传递数组。更应强调的是: 数组名作为成员方法的实参时,是把实参数组的起始地址传递 给形参数组,即两个数组共用同一段内存单元,因此,在成员 方法中对形参数组中各元素值的修改,都会使实参数组元素的 值也发生同样的变化。这种参数的传递方式被称为“双向地址 传递”。
} public class c6_6{
public static void main(String[ ] args){ int i,k; int arX[ ]={1,3,7,6}; int arY[ ]={78,0,42,5}; int len=arX.length; Add1Class p1=new Add1Class( ); System.out.println(" arX的原始数据");//打印X数组
类型标识符 数组名[ ]=new 类型标识符[数组长度]; 或
类型标识符[ ] 数组名=new 类型标识符[数组长度];
3
6.1.3 一维数组的引用 当数组初始化后就可通过数组名与下标来引用数组中的每
一个元素。一维数组元素的引用格式如下: 数组名[数组下标]
注意:数组下标的取值范围是0~(数组长度-1),下标值可以是 整数型常量或整数型变量表达式。
6.1 一维数组 6.2 一维数组引用举例 6.3 二维数组 6.4 二维数组的引用
1
6.1 一 维 数 组
6.1.1 一维数组的声明 数组的声明格式如下: 类型标识符 数组名[ ]; 或 类型标识符[ ] 数组名;
说明:数组元素的数据类型可以是Java的任何数据类型,如基 本类型(int、float、double、char等),类或接口等。
8
for(i=0;i<len;i++)
System.out.print(" "+arX[i]);
System.out.println("\n arY的原始数据");//打印Y数组
for(i=0;i<len;i++)
System.out.print(" "+arY[i]);
p1.add(arX,arY); //调用add方法计算两个数组之和 System.out.println("\n 再次输出arX");
【示例程序c6_7.java】 有两个一维数组s1和s2,s1存放着8 名学生的成绩,s2存放着5名学生的成绩,分别求出这两组学生 的平均成绩。 public class c6_7{
6.2 一维数组引用举例
6.2.1 测定数组的长度 6.2.3 数组间相互赋值
4
6.2.4 向成员方法传递数组元素 向成员方法传递数组元素也就是用数组元素作为成员方法
的实参。由于实参可以是表达式,而数组元素可以是表达式的 组成部分,因此,数组元素可以作为成员方法的实参。数组元 素作为成员方法的实参与用变量作为实参一样,是单向值传递, 即只能由数组元素传递给形参,程序中对形参的任何修改并不 改变数组元素的值。
for(i=0;i<len;i++) System.out.print(" "+arX[i]);
System.out.println("\n 再次输出arY"); for(i=0;i<len;i++)
System.out.print(" "+arY[i]); System.out.println("\n"); }
运行结果: arX的原始数据
1376 arY的原始数据
78 0 42 5 再次输出arX
1376 再次输出arY
79 3 49 11
}
9
6.2.6 同类型不同长度的数组引用同一个成员方法 在Java语言中,数组也是一种对象,因此,只要数组元素
的数据类型相同,而不论其长度是否一致,都可以引用同一个 成员方法,完成所需要的操作。
后的一对花括号内,给这个数组的所有数组元素赋上初始值。 例如:int[ ] a1={23,-9,38,8,65};
2.用关键字new初始化数组
(1) 先声明数组,再初始化数组。 类型标识符 数组名[ ]; 数组名=new 类型标识符[数组长度];
(2) 在声明数组的同时用new关键字初始化数组。相当于将上 面所述的两条语句合并为一条语句。格式如下:
public class c6_5{
public static void main(String[ ] args){ int arr[ ]={6,8,9}; //声明并初始化数组arr
int len=arr.length, k;
ff p1=new ff( );
k=p1.aa(arr[0],arr[1]);//arr[0]和arr[1]为方法aa的实参
【示例程序c6_5.java】 数组元素作为成员方法的实参,在 成员方法中改变形参x和y的值,方法调用结束后实参数组元素 的值没有改变。
5
class ff{
int aa(int x,int y){
inΒιβλιοθήκη Baidu z;
运行结果:
x=x+4;y=y+2; z=x*y; return z; k=100
} }
689
6.1.2 一维数组的初始化 声明一个数组仅仅为这个数组指定数组名和数组元素的类
型,并不为数组元素分配实际的存储空间。在Java程序中把这 一工作放在数组的初始化时进行。数组经过初始化后,其长度 (即可存放的元素个数)就不可再改变。 初始化方式: 直接指定初值和用new操作符两种方式。
2
1.直接指定初值的方式 在声明一个数组的同时将数组元素的初值依次写入赋值号
【示例程序c6_6.java】 两个数组相加,将结果存入第二个 数组中。
7
class Add1Class{ void add(int arA[ ],int arB[ ]){ int i; int len=arA.length; for(i=0;i<len;i++) arB[i]=arA[i]+arB[i]; }
System.out.println("k="+k);
for(int i=0;i<len;i++)
System.out.print(" "+arr[i]);
System.out.println("\n");
}
}
6
6.2.5 向成员方法传递数组 在定义成员方法时可以用数组作为它的形参,且只指定数
组名和它的数据类型,而不指定数组的长度。在这种情况下引 用该成员方法时,必须用具有相同数据类型的数组名作为成员 方法对应位置的实参,即向成员方法传递数组。更应强调的是: 数组名作为成员方法的实参时,是把实参数组的起始地址传递 给形参数组,即两个数组共用同一段内存单元,因此,在成员 方法中对形参数组中各元素值的修改,都会使实参数组元素的 值也发生同样的变化。这种参数的传递方式被称为“双向地址 传递”。
} public class c6_6{
public static void main(String[ ] args){ int i,k; int arX[ ]={1,3,7,6}; int arY[ ]={78,0,42,5}; int len=arX.length; Add1Class p1=new Add1Class( ); System.out.println(" arX的原始数据");//打印X数组
类型标识符 数组名[ ]=new 类型标识符[数组长度]; 或
类型标识符[ ] 数组名=new 类型标识符[数组长度];
3
6.1.3 一维数组的引用 当数组初始化后就可通过数组名与下标来引用数组中的每
一个元素。一维数组元素的引用格式如下: 数组名[数组下标]
注意:数组下标的取值范围是0~(数组长度-1),下标值可以是 整数型常量或整数型变量表达式。