Java 将嵌套for循环减少为单个for循环

Java 将嵌套for循环减少为单个for循环,java,for-loop,nested,Java,For Loop,Nested,我正在为我的一个班做作业,遇到了一个问题,我有点麻烦。我不太明白我该怎么做。如果有人能给我指出正确的方向,告诉我该怎么做,那就太好了。问题是 嵌套循环 for (int i = 1; i <= height; i++) { for (int j = 1; j <= width; j++) { System.out.print("*"); } System.out.println(); } for(int i=1;ifor(int i=1;ifor(int i

我正在为我的一个班做作业,遇到了一个问题,我有点麻烦。我不太明白我该怎么做。如果有人能给我指出正确的方向,告诉我该怎么做,那就太好了。问题是

嵌套循环

for (int i = 1; i <= height; i++)
{
    for (int j = 1; j <= width; j++) { System.out.print("*"); }
        System.out.println();
}

for(int i=1;i
for(int i=1;i
for(int i=1;i您可以将循环拆分为两个不嵌套的循环。第一个外观定义为每行打印的字符串:

StringBuilder sb = new StringBuilder();
for (int i = 0; i < width; i++) {
  sb.append("*");
}
String line = sb.toString();
还请注意,此迭代从索引0开始,最后一个索引与
宽度
高度
不同,这在这里并没有什么区别,但这是一个很好的实践,因为Java中几乎所有内容都使用基于0的索引


虽然此解决方案实际上没有像@KenBekov那样使用单个for循环,但我发现这样做更具可读性。

您可以将循环拆分为两个不嵌套的循环。第一个外观定义了为每行打印的字符串:

StringBuilder sb = new StringBuilder();
for (int i = 0; i < width; i++) {
  sb.append("*");
}
String line = sb.toString();
还请注意,此迭代从索引0开始,最后一个索引与
宽度
高度
不同,这在这里并没有什么区别,但这是一个很好的实践,因为Java中几乎所有内容都使用基于0的索引


虽然这个解决方案并没有像@KenBekov那样真正使用一个for循环,但我发现这样做更容易阅读。

应用公式。使用for循环生成N个矩形。并使用一些逻辑计算高度和宽度。Logica可以是算术或随机的。希望你能用这个sugg自己做作业估计:)应用公式。使用for循环生成N个矩形。并使用一些逻辑计算高度和宽度。Logica可以是算术或随机的。希望您能根据此建议自行完成作业。:)正是我要发布的内容,减去一半的空白。正是我要发布的内容,减去一半的空白。
StringBuilder sb = new StringBuilder();
for (int i = 0; i < width; i++) {
  sb.append("*");
}
String line = sb.toString();
for (int i = 0; i < height; i++) {
    System.out.println(line);
}