第四章 数组与方法
第四章数组与方法
一、数组的定义及使用:
???????????????? ①数组:一组相关数据(变量)的集合
???????????????? ②一维数组:???? 数据类型数组名[] = null??? //声明
??????????????????????????????????????????????????????? 数组名 = new 数据类型[长度]????????? //分配内存
???????????????????????????????????????????????????????
??????????????????????????????????????????????????????? 简写:数据类型数组名[] = new 数据类型[长度]
???????????????????? ③二维数组:???? 数据类型数组名[][];
??????????????????????????????????????????????????????? 数组名 = new 数据类型[行的个数][列的个数];
?
??????????????????????????? 简写:数据类型数组名[][]= new 数据类型[行的个
???????????????????? ??????????????????????????????????????????????????????????????????? ? 数][列的个数];
④初始化:
??????????????????????????? 动态初始化:先声明数组之后为数组中的每个内容
????????????????????????????????????????????????? 赋值
??????????????????????????? 静态初始化:在数组声明时就制定其具体内容
??????????????????????????? 一维:???? 数据类型数组名[] = {初值0,…,初值n}
??????????????????????????????????????????????????????? 例:int score[] = {91,92,93,94,95,96}
?????????????????????????????????? 二维:???? 数据类型数组名[][] = {{第0行初值},
????????????????????????????????????????????????????????????????????????????????????????????????? ?…,
?????????????????????????????????????????????????????????????????????????????????????????? {第n行初值}}
??????????????????????????????????????????????????????? 例:int score[][] = {{67,61},
???????????????????????????????????????????????????????????????????????????? {78,89,83},
????????????????????????????????????????????????????????????????????????????????? {99,100,98,66,95}
??????????????????????????????????????????????????????????????????????????????}
?
?
?
?
?
二、方法的声明及使用:
??????? ①方法:一段可重复调用的代码段 = 函数
??????? ②定义格式:?? public [static] 返回值类型 方法名称(类型参数1,
??????????????????????????????????????????????????? 类型 参数2…){
??????????????????????????????????????? 程序语句;
??????????????????????????????????????? [return 表达式];
?????????????????????????? ?}
??????????? ????? 1、直接使用主方法(main())调用,就必须用public
????????????? ? static
????????????? 2、可以无参数
????????????? 3、方法执行完后不管有无返回值都将返回到方法的
????????????? ? 调用处并向下继续执行
??????? ③方法重载:方法名称相同,但参数类型或参数个数不同
??????????????????? (返回值类型可相同可不同)
??????? ④return:在Java中,可以使用return语句直接结束一
???????????????? ?个方法。不管有无返回值,但一旦执行到了
???????????????? ?return语句之后,就返回到被调用处继续向下
???????????????? ?执行
??????? ⑤递归调用:可相当于循环,方法的自身调用。递归调用
??????????????????? 时必须有一个明确地结束条件,然后不断改
??????????????????? 变传入的数据
?
?
?
三、数组的引用传递:
??????? ①数组的传递:??? public void方法名(数据类型数组名[]){}
??????????????????????????????? 属于引用类型的传递,传递的是堆内存地
????????????????????? 址的使用权,一个数组可以有多个名称指
????????????????????? 向同一个堆内存空间,每一个名称都可以
????????????????????? 修改堆内存中的内容
??????? ②返回数组:?? public 返回数组类型[] 方法名(){
???????????????????????????????? 程序语句;
???????????????????????????????? return 数组名;
?????????????????????????????}
??????? ③数组排序:java.util.Arrays.sort(数组名);
??????? ④数组复制:System.arraycopy(源数组名称,源数组开始
??????????????????? 点,目标数组名称,目标数组开始点,复制
??????????????????? 长度)
??????? ⑤可变参数:?? public 返回值类型 方法名(类型…参数名){}
????????????? 1、向方法中传递可变参数之后,其中的参数是以数
???????????????? 组的形式保存下来的
????????????? 2、在使用可变参数的时候,也可以直接向方法中传
???????????????? 递一个数组
??????? ⑥foreach输出:? for(数据类型 变量名称:数组名称){}
???????????????????????? 方便数组的输出
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。