打破循环的 b 的最后一个值是多少? (如果我没记错的话是-1吗?)

问题描述 投票:0回答:1
class exp{
public static void main(String arr[]){

for(int b=3;b>=0;b--) {
System.out.println("");

for(int a=0;a<=b;a++)  {
System.out.print("*");
    }
}

    }
}

这是一个星号模式,我理解这段代码,并且根据我的理解,b 的最后一个值应该是 -1,以便最终的外循环中断并停止模式的打印。我什至尝试打印 b 的值,但了解到由于范围限制,它无法工作。有人可以确认一下这段代码中 b 的最终值吗?

java loops design-patterns iteration asterisk
1个回答
0
投票

是的,在循环的最后一次迭代中,

b
0
递减到
-1
,此时循环结束并且
b
超出范围。我们可以通过“提升”来证明这一点
b
。您还可以使用
String.repeat(int)
消除内部循环。喜欢,

int b;
for (b = 3; b >= 0; b--) {
    System.out.println("*".repeat(b + 1));
}
System.out.println(b);
© www.soinside.com 2019 - 2024. All rights reserved.