什么是方法
java方法是语句的集合,它们在一起执行一个功能
-
方法是解决一类问题的步骤的有序组合
-
方法包含类和对象中
-
方法在程序中被创建,在其他地方被引用
示例:
package com.hu.method;
public class Demo01 {
//main方法
public static void main(String[] args) {
int sum = add(1,2);
System.out.println("sum = "+sum);
}
//加法
public static int add(int a,int b){
return a+b;
}
}
运行结果:
一个方法最好只完成1个功能,有利于后期的拓展
2.方法的定义和调用
java的方法类似于其他语言的函数,是一段用来完成特定功能的代码片段,一般情况下,定义一个方法包含以下语法:
方法包含一个方法头和一个方法体。下面是一个方法的所有部分:
示例:
package com.hu.method;
import java.util.Scanner;
public class Demo02 {
public static void main(String[] args) {
System.out.println("请输入两个数字:");
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
Scanner scanner1 = new Scanner(System.in);
int b = scanner1.nextInt();
int c = max(a,b);
System.out.println(c);
scanner.close();
}
public static int max(int num1,int num2){
int temp=0;
if(num1>num2)
{
temp = num1;
}
else if (num1==num2) {
temp = num1;
}
else{
temp = num2;
}
return temp;
}
}
运行结果:
java是值传递
3.方法的重载
示例:
方法名相同、参数列表不同
4.命令行传参
有时候你希望运行一个程序的时候再传递给它消息。这要靠传递命令行参数给main()函数实现
示例:
package com.hu.method;
public class Demo03 {
public static void main(String[] args) {
for(int i = 0;i< args.length;i++){
System.out.println("args[" + i + "]:" + args[i]);
}
}
}
运行:
5.可变参数
在方法声明中,在指定参数类型后加一个省略号(...)
一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通参数必须在它之前声明
示例:
package com.hu.method;
public class Demo04 {
public static void main(String[] args) {
Demo04 demo04 = new Demo04();
demo04.test(1,2,3,4,5);
}
//int x 必须在前边
public void test(int x,int...i){
System.out.println(i[3]);
}
}
6.递归
边界条件:边界
前阶段
返回阶段 n*(n-1)
java都是使用栈机制的
小计算递归,大计算不行,电脑容易崩