java互相调用死循环_Java方法相互调用会出现死循环的拓展(if语句的方法完成循环结构)...

今天初次学到Java方法的时候发现一个问题,就是写了一个方法,里面调用另外一个方法,但是如果该方法里面又调用了第一个方法会出现怎么样的问题呢?

public static void method(int a) {

a++;

method1(a);

}

public static void method1(int a) {

a++;

method(a);

}

public static void main(String[] args) {

method(0);

}

在这里我们定义两个方法,每个方法都是把参数自加1然后调用对方,很显然,当主方法调用其中任意一个方法的时候 ,就会造成方法的死循环当中去。

这时我萌生一个大胆的想法,既然能达成循环,加上特定的条件如循环起点,终点,步长不就可以构成一个循环吗,而且实践之后发现,最终可以达到用判断语句就可以达成循环的方法!

简单来说就是锤子造飞机!

下面是实现代码

//定义两个方法,让他们相互调用对方达成循环效果,加上步长和判断就可以变成循环语句

public static void for1(int a,int times) {

if(a<=times) {

System.out.println(a);

a++;

x(a,times);

}

}

public static void x(int a,int times) {

if(a<=times) {

for1(a,times);

}

}

public static void main(String[] args) {

for1(0,10);

}

简单来说就是两个方法都判断一下达到循环终点没,如果到了循环终点就跳出互相调用的这个死循环

上面的方法for1的参数:

起点值

终点值

从起点值开始每次循环加一,直到终点值为止

虽然完成了一个简单的循环结构,但也只是简单的循环而已,于是,带有循环起点,循环终点,步长参数的比较复杂的方法就完成了

//先调用这个

public static void for1(int print,int times) {//参数为输出的数和次数,每次加一

int b =0;

if(b

原谅英语学渣参数变量只能想到a,b,c到最后看的头昏,为了不让读者头昏,写了尽可能多的注释。。。。。

最后的输出结果为

a8ba97d51977a227f05f211e4456179e.png

因为注释写的足够多了,所以就不罗嗦了,主要说下两个for1的用法

我在main方法里面的第一个for1方法为以10(第一个参数)开头,输出并加一10(第二个参数)次,

第二个是以第一个参数(50),循环终点为第二个参数(10),循环起点为第三个(0),步长默认为1,可以自己添加参数为步长并且修改相关代码达到**for(输出,循环终点,循环起点,步长)**构成一个差不多的for循环!笔者就不赘述了。

总结

其实这个东西也是无意中才发现的,搜了下,网上还没有相关的文章,所以钻个空,顺便开通csdn一直没写过啥东西,刚好,诶!就是第一篇文章了(计划通)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值