方法
一,方法的概念与定义
1.概念:将代码模块化(类似于c语言中的函数),使其能被直接调用
2.定义:public static 返回值 方法名(形式参数列表){
方法体}
eg:
public static boolean isLeapYear(int year){ }注意!!!!
方法名字采用小驼峰命名
方法不能嵌套定义
二,方法调用的执行过程
调用方法--->传递参数--->找到方法地址--->执行被调方法的方法体--->被调方法结束返回--->回到主调方法继续往下执行
1.执行过程中实参的值永远都是拷贝到形参中
2.形参的改变不会影响实参的值(因为方法执行完后在栈中被销毁)
三,方法的重载
方法的重载:
1.方法名必须相同
2. 参数列表必须不同(参数的个数不同、参数的类型不同、类型的次序必须不同)
3. 与返回值类型是否相同无关
eg:以下代码只改变了返回值,不构成方法重载
public static int add(int x,inty){ return x+y; } public static double add(int x,inty){ return x+y; }数组
一,一维数组的定义(常见3种定义方式)
int[] array={1,2,3,4,5,6}; int[] array=new int[]{1,2,3,4,5,6}; int[] array=new int[10];//这种定义方式并没有初始化当前指定的值,默认都为0其中,int[]是一个类型,new代表创建一个新的对象。array是引用变量(里面放的是地址),这个引用指向数组对象且一个引用不可能同时指向多个对象
array[0]=2 意思是通过array这个引用,访问对象0下标,的值是2 array.length 意思是通过array这个引用,访问对象的长度
二,一维数组的遍历
1,for循环
for (int i = 0; i < array.length; i++) { System.out.print(array[i]+" "); }2.for-each循环
int[] array=int{1,2,3,4,5,6}; for (int x:array) { System.out.print(x+" "); }其中int x是数据类型,array为数组名称。可以理解为遍历array这个数组,取出每个元素放到x里面
3.工具类
String ret=Arrays.toString(array); System.out.println(ret);使用Arrays的toString方法,把传入的参数array表示的数组以字符串的形式输出
三,二维数组的定义
int[][] array=int{{1,2,3},{4,5,6}}; int[][] array=new int[][]{{1,2,3},{4,5,6}}; int[][] array=new int[2][3];不规则二维数组
int[][] array=new int[2][]; array[0]=new int[3]; array[1]=new int[5];注意:二维数组中行不能省略,列可以省略
2.二维数组就是特殊的一维数组
int[][] array={{1,2,3},{4,5,6}}; System.out.println(array.length);//行数2 System.out.println(array[0].length);//3 System.out.println(array[1].length);//3四,二维数组的遍历
1.for循环
for (int i = 0; i < array.length; i++) { for (int j = 0; j < array[i].length; j++) { System.out.print(array[i][j]+" "); }2.for each循环
for (int[] tpmarray:array) { for (int x:tpmarray) { System.out.print(x+" "); } }理解:对应的数据类型,数组名称
3.工具类
String ret=Arrays.deepToString(array); System.out.println(ret);注意:Arrays.toString是遍历一维数组的,这里是二维数组,要深入进行打印,用deepToString