System.out.println(),其中System是系统的一个类,out是对象,print是类里边的方法。
/* 修饰符 返回值类型 方法名(参数类型 参数名){ ... 方法体; return 返回值; } */
修饰符:修饰符是可选的
返回值类型:void表示无返回值,返回值类型还可以是int、double、char、String等
方法名:首字母小写和驼峰原则
参数类型:参数是可以选择的。参数为形式参数,即表示方法中起定义作用的参数。实际参数表示实际调用中传递给方法的参数。Java是值传递,只是将具体的数值传递给方法中的各个参数,方法中的赋值不会改变参数原始的值。
方法重载是指在一个类中,有相同的函数名称,但是形参不同(参数类型、参数数量)的函数。方法重载的好处是不用为了不同的参数类型或者参数数量,而重新定义多个函数。调用的时候,虽然方法名字相同,但根据参数表可以自动调用相应的函数。
main方法中的args[]是一个数组,可以输入数据。Run-Edit Configurations-Program arguments
可变参数对应于方法的重载,当仅仅因为方法参数的数量不同而进行方法重载时,需要进行重载的次数过多,或者因为传递参数不确定时,无法进行合适的方法重载,因此采用可变参数的方式可以较为简便的实现。
在方法声明中,在指定参数类型的后边加一个省略号(...)即可。一个方法中只能指定一个可变参数,且必须是方法的最后一个参数,任何普通的参数都必须在它之前声明。
public void method(double...numbers){ //方法体 }
递归就是A方法调用A方法,自己调用自己。
利用递归可以用简单的程序解决一些复杂的问题,递归策略只需少量的程序就能描述出解题过程中所需要的多次重复计算,大大减少程序的代码量。
递归结构包括两部分:
①递归头:什么时候不调用自身方法。如果没有头,将陷入死循环
②递归体:什么时候需要调用自身方法
需要注意的是,递归只适合较小的运算量,如果调用自身方法过多可能会造成栈溢出。
//阶乘方法 public static int f(int n){ if(n==1){ return 1; }else{ return n*f(n-1); } }