Java中的方法
方法的基本概念
Java中的方法定义格式
public static 返回类型 函数名称{
执行语句;
return[] ;
}
示例:定义一个无参数返回的方法
public class Testdemo{
public static void main(String args[]){
printInfo() ;
}
}
public static void printInfo{
System.out.println("*********************") ;
System.out.println("*****java程序设计*****") ;
System.out.println("**********************") ;
}
示例:定义一个有参数无返回值的方法
public class TestDemo {
public static void main(String args[]) {
pay(10.0); // 调用方法
pay(-10.0); // 调用方法
}
/**
* 定义一个支付的操作方法,如果支付金额大于0则正常支付,否则会输出错误提示信息
* @param money 要支付的金额
*/
public static void pay(double money) { // 购买支付操作
if (money > 0.0) { // 现在已经给钱
System.out.println("可以进行支付!");
} else { // 不能够支付
System.out.println("你穷疯了,没钱还买东西!");
}
}
}
示例:利用return结束调用
Public class TestDemo {
public static void main(String args[]) {
set(100); // 正常执行输出
set(3); // 满足方法判断条件,会中断输出操作
set(10); // 正常执行输出
}
/**
* 定义一个设置数据的操作方法,如果该数据为3将无法设置
* @param x 要设置的数据内容
*/
public static void set(int x) { // 方法声明为void
if (x == 3) { // 判断语句
return; // 方法后面的内容不执行了
}
System.out.println("x = " + x);
}
}
方法的重载
关于方法的重载,同一个方法名,重载的不同在于()内变量的个数,比如**public static int add(int x,int y)**与 **public static int add(int x,int y,int z)**两个就有所不同。
注意:返回类型不是区分方法重载的因素,而是变量的个数。
范例
public class Testdemo{
public static void main(String args[]){
add(10,20) ;
add(10,20,30) ;
}
}
public static int add(int x,int y,int z){
return x + y + z ;
}
public static int add(int x,int y){
return x + y ;
}
方法的递归调用
方法递归调用要有明确的结束条件,不然使用不当会造成内存的溢出
范例
public class TestDemo {
public static void main(String args[]) {
System.out.println(sum(100)); // 1 - 100累加
}
/**
* 数据的累加操作,传入一个数据累加操作的最大值,而后每次进行数据的递减,一直累加到计算数据为1
* @param num 要进行累加的操作
* @return 数据的累加结果
*/
public static int sum(int num) { // 最大的内容
if (num == 1) { // 递归的结束调用
return 1; // 最终的结果返回了1
}
return num + sum(num - 1); // 递归调用
}
}