java方法
java方法(只有值传递)
什么是方法(函数?)
Java方法是语句的集合,他们在一起执行一个功能
- 方法是解决一类问题的步骤的有序组合
- 方法包含与类与对象中
- 方法在程序中被创造,在任意地方被使用
方法设计的原则:一个方法一个功能
方法命名规范:小写+驼峰
public class Demo01 {//main方法
public static void main(String[] args) {
int add = add(1,2);
System.out.println(add);
}
//加法
public static int add(int a,int b){
return a+b;
}
结果是3
方法的定义
修饰符 返回值类型(无参:void) 方法名字(参数类型 参数名){
方法体
return 返回值;
}
注:return 0;终止方法
方法的重载
方法名字相同
参数不同类型不同,参数个数不同,参数的排列顺序不同
返回值类型可以相同也可以不同
命令行传参
public class Demo03 {
public static void main(String[] args) {
for (int i = 0; i < args.length; i++) {//args.length数组长度
System.out.println("args["+i+"]"+args[i]);
}
}
}
打开命令行
可变参数(不定项参数)
在指定参数类型后加一个...
一个方法只能一个可变参数,必须是最后一个参数(普通参数必须在它之前声明)
public class Demo04 {
public static void main(String[] args) {
Demo04 demo04 = new Demo04();
demo04.method(1,2,3);
}
public void method(int... i){
System.out.println(i[0]);
System.out.println(i[1]);
System.out.println(i[2]);
}
结果:
递归
自己调用自己
- 递归头:什么时候不用调用自身方法
- 递归体:什么时候需要调用自身方法
public static void main(String[] args) {
System.out.println(f(5));
}
public static long f(int n){
if(n==1){
return 1;
}else{
return n*f(n-1);
}
}
结果:120