目录
方法的基本用法
方法调用
实参和形参的关系
方法的参数传递
没有返回值的方法
方法的重载(overload)
方法递归
递归
方法的基本用法
基本语法格式
// 方法定义 public static 方法返回值 方法名称([参数类型 形参 ...]){ 方法体代码; [return 返回值]; } // 方法调用 返回值变量 = 方法名称(实参...);方法调用
通过主方法调用 数据类型 变量 = 方法名称(参数)
定义方法的时候, 不会执行方法的代码, 只有调用的时候才会执行当方法被调用的时候, 会将实参赋值给形参参数传递完毕后, 就会执行到方法体代码当方法执行完毕之后(遇到 return 语句), 就执行完毕,回到方法调用位置继续往下执行一个方法可以被多次调用 实参和形参的关系
在调用有参方法时,实参 (值)会赋值给形参 (变量名)
public class Test { public static void main(String[] args) { int num1 = 10; int num2 = 20; int sum = add(num1,num2);//num1,num2是实参 System.out.println(sum); } public static int add(int a,int b){//a,b是形参 return a+b; } }方法的参数传递
Java方法中只有值传递,只是把实参的值复制一份给形参
swap中a和b的值互换,并不会改变main方法中的a,b
import java.util.Scanner; public class Test { public static void main(String[] args) { int a = 10; int b = 20; swap(a,b); System.out.println(a); System.out.println(b); } public static void swap(int a,int b) { int temp = a; a = b; b = temp; System.out.println("swap方法中的a是"+a); System.out.println("swap方法中的b是"+b); } } //输出swap方法中的a是20 swap方法中的b是10 10 20没有返回值的方法
如果方法没有返回值,使用void声明返回值类型,依然可以用return关键字
public class Test { public static void main(String[] args) { fun(10); fun(30); } public static void fun(int num) { if (num == 10) { System.out.println("yes"); return; } System.out.println("no"); } }
在没有返回值的方法中使用return,表示提前结束方法的调用
注意
Java中没有函数声明的概念,一旦定义了一个方法就必须写这个方法的实现 调用该方法与该方法的位置无关,可以在方法实现代码之前调用方法
方法的重载(overload)在同一个类中,定义了若干个方法名称相同,参数列表不同(参数类型/参数个数),与返回值无关,这样的一组方法称为重载方法
public static double add(double a,double b){ return a+b; } public static int add(int a,int b){ return a+b; } public static int add(int a,int b,int C){ return a+b+c; }方法递归 递归
1.一个大问题可以拆分成多个子问题的解
2.拆分后的子问题和原问题除了数据规模不一样,解决思路完全相同
3.存在一个递归终止条件
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)