Java双层for循环的解释

首先介绍最常见的双层for循环,写这个的原因就是看清楚for循环的多样化,按照当时需求去写for循环,希望你们能理解,少走弯路,写的不好的,写评论,我会修改的

 

i++ :是先运行,在加1

  ++i  :是先加1,在运行

1. for (int i = 0; i < 5; i++) {
    for (int j = 0; j < 5; j++) {
        System.out.println(j);
    }
}
这个循环虽然是双层的,但是运行的机制都是各自管各自的,没有联系,输出的j依然是第二个循环
运行次数---(0,1,2,3,4),但是双层的循环会出5遍一样的运行次数
因为是第一层for循环的条件满足,进入下一层for循环,当本层的条件满足时就会一直循环,
当不满足的时候退出本层的循环,回到上一层的循环,第二层的循环相当于continue,会跳出当前循环,去下一个循环。

 

2. for (int i = 0; i < 5; i++) {
    for (int j = 0; j < 5; j++) {
        System.out.println(i);
    }
}

这个循环与上面的运行机制一样,就是换了一个输出对象,但输出的次数就不一样了

次数是----(00000,11111,22222,.......)

这次就是第一层的循环条件满足进入第二层循环5次输出5个0,当第二层条件不满足的时候返回上一层的循环(其实也可以说是下一个循环,单看个人对循环的理解),第一层的循环条件还是为true,所以继续循环,就会出现一开始的值

3.  for (int i = 0; i < 5; i++) {

    for (int j = 0; j < i; j++) {
        System.out.println(i);
    }
}
这次的输出是----(1,2,2,3,3,3,4,4,4,4)

看到这里如果感觉思维不混乱就继续看,如果混乱的话,我的建议是---理解初始化,条件表达式,一元运算符。

这个双层的for循环,关注点在第二层的联系,因为我定义的是i<5,所以i++的自增只能运行到4,而第二层的初始化也是0,它的自增(j++)是根据第一层的循环进行增加,所以把0排除在外,并且每一次的循环都会增加一次直到第一层的条件不满足退出循环

4. for (int i = 0; i < 5; i++) {

    for (int j = 0; j < i; j++) {
        System.out.println(j);
    }
}
这个和上一个运行机制一样,就是输出换了一下

这次的输出是----(0,   0,1,   0,1,2,   0,1,2,3),为什么会得到这样的数值呢?还是自己操作一下,自己就会明白的

  • 21
    点赞
  • 56
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值