返回值情况

目录

一、方法

1.无参数无返回值

2.有参数无返回值

3.有参数有返回值

三、return的使用

1.注意事项

2.无返回值下使用return

四、多级调用

五、递归方法


一、方法

概念:代码的封装,将复用的代码放到块中,通过调用的形式调取

组成:方法调用,方法实现

优势:结构清晰易于复用

1.无参数无返回值

注意事项:方法与方法之间平级,不能嵌套使用

示例:


public class Fun {
	public static void main(String[] args) {
		System.out.println("锄禾日当午");
		print();
		System.out.println("汗滴禾下土");
		print();
		System.out.println("谁知盘中餐");
		print();
		System.out.println("粒粒皆辛苦");
		print();//print下面一行要用两个方法,因为有两个public他们是同级的要用{}区分开
	}
	public static void print() {
		for(int i=1;i<=7;i++) {
			System.out.print("-");//不能加ln,加了就是换行
		}
		System.out.println();//这里是每一行完了之后的回车
	}
}

2.有参数无返回值

为什么要带参数?

参数提升了方法的复用性

public class Args {
		public static void main(String[] args) {
			System.out.println("锄禾日当午");
			print(10,'*');//数字表示实际参数
			System.out.println("汗滴禾下土");
			print(15,'&');
			System.out.println("谁知盘中餐");//‘’是单个字符,并且要用,隔开
			print(20,'@');
			System.out.println("粒粒皆辛苦");
			print(25,'$');//print下面一行要用两个方法,因为有两个public他们是同级的要用{}区分开
		}
		int Val;//Val表示形式上的参数
		public static void print(int Val,char f) {//这里要用,隔开
			for(int i=1;i<=Val;i++) {
				System.out.print(f);//不能加ln,加了就是换行
			}
			System.out.println();//表示回车
		}
}

3.有参数有返回值

示例1:

public class Return {
	public static void main(String[] args) {
		String sum = add("佛祖","保佑");
			System.out.println("结果:"+sum);
			System.out.println(add("永无","BUG"));//字符串都要大写String,并且要带双引号
	}
	public static String add(String a,String b) {//add前面要写返回值类型,整数就是int类型,字符串就是string类型
		return a+b;//该运算法则就在return里面改
	}
}

示例2:

public class return0 {
		public static void main(String[] args) {
			int sum = add(5,6);
				System.out.println("和:"+sum);
				System.out.println("和:"+add(2,3));//字符串都要大写String,并且要带双引号
		}
		public static int add(int a,int b) {//add前面要写返回值类型,整数就是int类型,字符串就是string类型
			return a+b;//该运算法则就在return里面改,这是返回值
		}
	}

注意事项:

要在合理区分整数类型和字符串类型的使用区别

三、return的使用

1.注意事项

一个方法中只有一个return;除非有条件判断,每个出口都需要return,有多少个出台就有多少个return

一个方法只能完成一种功能

示例:

public class return1 {
	public static void main(String[] args) {
		System.out.println(jiShu(8));
	}
	public static boolean jiShu(int i) {
		if(i%2==1) {
			return true;	
		}else {
			return false;//if里面有两个出口,所以有两个return
		}
	}
}

2.无返回值下使用return

没有返回值下使用return时,return不能带值

示例1:

public class return3 {
	public static void main(String[] args) {
		for(int u=1;u<=10;u++) {
			if(u==4) {//如果使用<=则无法显示结果,为什么?
				//break;跳出for循环,则结果为1,2,3,main方法
				return;//跳出方法体,则结果为1,2,3
			}
			System.out.println(u);
		}
		System.out.println("main方法");
	}
}

示例2:

计算输入数字的阶乘

public class return4 {
	public static void main(String[] args) {
		System.out.println(n(5));
	}
	public static int n(int i) {
		if(i==1) {
			return 1;
		}
		return i*n(i-1);
	}
}

四、多级调用

public class test {
	public static void main(String[] args) {
		System.out.println("从m1开始");
		m1();
		System.out.println("完毕");
	}
	public static void m1() {
		System.out.println("m1执行了");
		m2();
	}
	public static void m2() {
		System.out.println("m2执行完毕了");
	}
}

五、递归方法

是指自己调用自己,且要有退出的出口,如果没有出口就是死递归,类似于循环

示例:

使用递归完成斐波拉契数列

0  1  1  2  3  5  8  13  21......

public class test2 {
	public static void main(String[] args) {
		for(int i =0;i<10;i++){
			System.out.print(f(i)+" ");
		}
	}
	
	public static int f(int n) {
		if(n==0||n==1) {
			return n;
		}
		return f(n-1)+f(n-2);
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值