1、基本的格式
返回值类型 方法名称 (类型 参数1,类型 参数2,.......){
程序语句;
return 表达式;
}
注:如果不需要传递参数到方法中,只要将括号写出,不必填入任何内容。如果方法没有返回值,则return语句可以省略
例1:不需要传递参数和返回值的方法
public class a4 { public static void main(String[] args) { show(); System.out.println("这是1到4的和"); } public static void show(){ int sum=0; for(int i=1;i<5;i++){ sum+=i; } System.out.println(sum); } }
例2:有传递参数没有返回值的方法
public class a4 { public static void main(String[] args) { show(10); System.out.println("这是1到四的和"); } public static void show(int j){ int sum=0; for(int i=1;i<j;i++){ sum+=i; } System.out.println(sum); } }
例3:有传递参数和有返回值的方法
public class a4 { public static void main(String[] args) { int k= show(10); System.out.println("\n"+"输出的次数是:"+k); } public static int show(int j){ for(int i=1;i<j;i++){ System.out.print("@"); } return j; } }
2、方法的重载
概念:是在同一个类中允许同时存在一个以上的同名方法,只要它们的参数个数或类型不同即可。在这种情况下,该方法就叫做被重载了,这个过程称为方法的重载。
public class a4 { public static void main(String[] args) { int a,b; String c; a=show(11); System.out.print(a+"\n"); b=show(15,23); System.out.print(b+"\n"); c=show("hi"); System.out.print(c); } public static int show(int j){ return j; } public static int show(int j,int k){ System.out.print("j+k="); return j+k; } public static String show(String i){ System.out.print("输出输入的字符:"); return i; } }
3、传递数组到方法中
(1)传递一维数组到方法中,只要指明传入的参数是一个一维数组即可
public class a5 { public static void main(String[] args) { int q[]={1,24,32,15,13}; show(q); } public static void show(int k[]){ int max=k[0]; for(int i=0;i<k.length;i++){ System.out.print(k[i]+" "); if(max<k[i]) max=k[i]; } System.out.println("\n"+"数组中的最大值是:"+max); } }
(2)传递二维数组到方法中,只要指明传入的参数是一个二维数组即可
public class a5 { public static void main(String[] args) { int q[][]={{1,24,32,15,13},{322,134,132,52,1,5}}; show(q); } public static void show(int k[][]){ for(int i=0;i<k.length;i++){ for(int j=0;j<k[i].length;j++){ System.out.print(k[i][j]+","); } System.out.println(); } } }
4、返回数组的方法
如果方法返回整数,则必须在声明时在方法的前面加上 int关键字。如果返回的是一维数组的整型数组,则必须在方法的前面加上int[]。如果返回的是二维数组的整型数组,则在方法的前面加上int[][],以此类推。
public class a5 { public static void main(String[] args) { int q[][]={{1,24,32,15,13},{322,134,132,52,1,5}}; int n[][]; n=show(q); for(int i=0;i<n.length;i++){ for(int j=0;j<n[i].length;j++){ System.out.print(n[i][j]+","); } System.out.println(); } } public static int[][] show(int k[][]){ for(int i=0;i<k.length;i++){ for(int j=0;j<k[i].length;j++){ k[i][j]+=10;//数组元素加10 } } return k; } }