二维数组
数组的每一个元素都是一个一个的值,我们称之为一维数组
二维数组 中的每一个元素都是一个一维数组,
二维数组是储存一维数组的数组
定义一维数组
元素数据类型[] 数组名;
定义二维数组
元素数组类型[][] 数组名;
int[][] arrInarr;
声明了一个二维数组arrInArr,每一个元素都是一个int[]类型的一维数组
二维数组的初始化
静态初始化
事先知道元素是什么
元素数据类型[][] 数组名 = new 元素数据类型[][] {一维数组1,一维数组2……}
int[] arr1 = {1,2,3};
int[] arr2 = {4,5};
int[] arr3 = {6};
int[][] arrInArr = new int[]{arr1,arr2,arr3};
int[][] arrInArr2 = {{1,2,3},{4,5},{6}}
二维数组的长度:数组名.length
动态初始化二维数组
语法
元素数据类型[][] 数组名 = new 元素数据类型[x][y];
x: 表示二维数组有x个一维数组
y: 表示每一个一维数组有y个元素
定义了一个x行y列的二维数组
获取二维数组的元素
//step1: 通过二维数组获取每个一维数组
int [] arr;
int item;
for( int i = 0; i < arrInArr.length;i++){
arr = arrInArr[i];
for(int j = 0; j < arr.length; j++){
item = arr[j];
System.out.print(item + “ “);
}
System.out.println(); //换行
}
方法:
方法的设计练习(难点)
方法的定义(重点)
方法的调用(重点)
针对于某一功能的重复操作,循环解决不了,就需要用到方法
方法
封装一个功能的代码块
被提取出来的功能代码可以就是类中定义的一个方法
意识: 实际开发过程中重复的功能代码抽离出来,定义成方法,通过方法调用远程重复功能地执行
方法
概念:完成特定功能且可以被重复调用的代码快
定义语法
[ 修饰符 ]返回值类型 方法名(参数类型 参数1 , 参数2 …..){
方法体
[return 返回值]
}
方法语法解析
1> [修饰符] 修饰符直接写public static即可
2> 返回值类型: 完成特定功能,是否需要给调用者返回一个值
如果需要返回一个值,那写上这个返回值的数据类型
如果不需要返回一个值,就写上void,表示无返回值
3> 方法名,就是方法的名字,未来通过方法名需要方法. 方法名需要符合命名规则, 建议使用动词
4> 参数列表. 有多个参数构成的列表,每个参数用,号分割
5> 方法体: 完成某一个功能的代码
6> return
①把值返回给调用者
②结束方法
方法的调用
形势参数: 方法定义是的参数称为形势参数,简称形参
实际参数: 方法调用时需要传入到方法中的真实的具体参数,简称实参
方法调用的语法:
所在类的类名.方法名(实际参数)
类名.方法名(实际参数)
调用方法的地方(行数)称为方法的调用处/调用者
int m = 10;
int n = 20;
int result;
result = MethodDemo3.add(m,n);
// 调用add方法,传入实参m,n
设计方法:
开发者主要抓住两点即可
1> 形势参数:看一个功能, 是否存在未知的因素需要调用处传入,如果需要把他们定义成方法形参
2> 返回值类型:看完成一个功能是否需要给调用处返回一个结果?
—-如果需要给调用处返回结果,那么就写上这个结果的数据类型
—-如果不需要给调用处返回结果,那么就写上void,表示无返回