首页 >> 方法大全

Java方法的定义和使用

2022-05-19 方法大全 287 作者:考证青年

方法最大的优点是可以重复调用,但是对于形成方法的那些操作,这些要根据自己的实际项目经验自行总结。

##方法的基本定义

限制:定义在主类中方法,由主方法直接调用的方法形式。

方法是可以重复调用的一组方法。要在 Java 中定义方法,可以使用以下语法。

public static 返回类型 方法名称([参数类型 变量, ......]) {
	方法体代码;
	[return [返回值];]
}

定义方法时,方法返回值有两种:

示例:定义一个没有返回值也没有参数的方法

public class TestDemo {
	public static void main(String[] args) {
		print();	//主方法里面直接调用方法
	}
	public static void print() {
		System.out.println("Hello	World!"); //定义方法
	}
}

示例:定义一个有参数但没有返回值的方法

public class TestDemo {
	public static void main(String[] args) {
		print("Hello");	//主方法里面直接调用方法
		print("	world");
		print("!");
	}
	public static void print(String msg) {	//定义方法
		System.out.print(msg); 
	}
}

示例:带参数和返回值的方法

public class TestDemo {
	public static void main(String[] args) {
		int result = add(10, 20);
		System.out.println(result);
		//既然方法有返回值,那么这些返回值也可以直接输出
		System.out.println(add(100, 200));
	}
	public static int add(int x, int y) {	//定义方法
		return x + y;
	}
}

但是在定义方法的时候有一点需要注意。如果在方法上使用了 void 定义,则可以直接使用该方法来结束调用。一般来说,这种处理往往需要结合if判断来实现。

public class TestDemo {
	public static void main(String[] args) {
		print(10);
		print(20);
	}
	public static void print(int x) {	//定义方法
		if(x == 20)		//表示的是方法结束的判断
			return;		//此语句之后的代码不再执行
		System.out.println("x = " + x);
	}
}

对于第一次接触该方法的人方法,首先要记住语法。至于怎么用,还需要时间去消化。

##方法重载(强调)

方法重载是指方法名相同,但参数的类型和个数不同。

示例:实现方法重载

public class TestDemo {
	public static void main(String[] args) {
		//此时将根据参数的类型和个数的不同执行不同的方法体
		System.out.println(add(10, 20));
		System.out.println(add(30, 40, 50));
		System.out.println(add(1.1, 2.1));
	}
	public static int add(int x, int y) {
		return x + y;
	}
	//此时方法名称相同,参数的个数不同
	public static int add(int x, int y, int z) {
		return x + y + z;
	}
	public static double add(double x, double y) {
		return x + y;
	}
}

方法重载有一个重要原则:方法的返回值类型必须相同。

示例:观察以下程序

public class TestDemo {
	public static void main(String[] args) {
		//此时将根据参数的类型和个数的不同执行不同的方法体
		System.out.println("hello");   //输出字符串
		System.out.println(1);			//输出整形
		System.out.println(1.1);		//输出浮点型
		System.out.println('A');		//输出字符
		System.out.println(true);		//输出布尔
	}
}

证明:.out.() 是一个重载方法

方法递归调用

方法的递归调用是指方法调用自身的形式。一般来说,如果要对方法进行递归操作,通常具有以下特点:

示例:累积 1 ~ 100

public class TestDemo {
	public static void main(String[] args) {
		System.out.println(sum(100));
	}
	public static int sum(int num) {
		if(num == 1)
			return  1;
		return num + sum(--num);
	}
}

[main() call] sum() 方法的第一次执行 100 + sum(99); [sum() ] sum() 方法的第二次执行 99 + sum(98) ;[sum() 递归] sum() 方法的第三次执行 98 + sum(97);…[sum() 递归] sum() 方法的第二次最后执行 + sum(1); [sum()递归] sum()方法倒数第二次执行;

示例:实现 60!,这个结果太大,应该使用。

public class TestDemo {
	public static void main(String[] args) {
		System.out.println(mul(60));
	}
	public static double mul(int num) {
		if(num == 1)
			return  1;
		return num * mul(--num);
	}
}

从代码中可以看出,大部分使用while循环的操作都可以用递归来代替。之所以使用递归,是因为一种方法可以执行的操作很多,而且结构更好。

tags: 递归

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了