java中方法形似于c语言中的函数。java方法的出现是为了在多次调用同一种类型的方法的时候不用再次定义,提高效率和减少时间。(个人白话理解)
方法的语句格式:
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...){
方法主体代码;
return XXX;
}
方法的实参和形参:形参就是定义函数的时候,那个括号里面写的那个参数名称,他只对那个函数内部有效,也就是函数内部就可以直接用这个名称,其他地方即使有同样的名称,也是和这个函数里面不同的。 实参就是调用这个函数的时候,传递给它的参数。
用一个简单案例举例:定义一个方法判断一个数是否是偶数
public class MethodDemo {
public static void main(String[] args) {
/*调用我们定义的isDataType方法
这里我们定义了一个布尔类型的变量去接收方法的返回值
*/
boolean flag= isDataType(10);//这里10是实参
System.out.println(flag);
}
//因为我们要返回的值是true和false,所以在这里定义接收类型是boolean
//我们要判断的值是int型,所以在方法的括号类定义int型变量number
public static boolean isDataType(int number) { //这里numer是形参
if (number%2==0){
return true;
}else{
return false;
}
}
}
我们可以通过这个案例很清楚的了解形参和实参,需要注意的是,在定义了一个我们需要的方法过后,我们需要在main函数里调用这个方法,否则就不运行该方法。方法的调用类型有两种:
a.像上面一样定义一个变量去接收方法里传过来的返回值,再用输出语句输出返回值。
b.直接用输出语句输出方法的调用
System.out.println(isDataType(number));//isDataType是我上面案例定义的方法名
方法传递基本数据类型:
public class MethodDemo4 {
public static void main(String[] args) {
int number=100;
//输入一个实参
System.out.println("调用change方法前:"+number);
change(number);//调用方法
System.out.println("调用change方法后:"+number);
int a=change(number);//设置一个变量接收方法的返回值
System.out.println("设置一个a接收方法里的值后:"+a);
}
public static int change(int number) {
return number =200;
}
}
运行结果:
我们可以看到,在第一次调用方法的过后,number的值并没有发生改变,这是因为,我们向change方法里面传递了一个实参,参数在change方法里面改变了,但是这个改变过后的参数只是change方法里面的参数,并没有返回到main函数里。所以我们设置一个变量去接收方法里面改变过后的参数,这样main函数里的参数也发生了改变。