Java 不确定在何处插入for循环

Java 不确定在何处插入for循环,java,Java,我需要编写一个程序,要求用户输入符号之间的空格数。例如 & & & & & & & & & 用户将输入一个整数,符号之间的间距应更改。 我现在有以下代码正常运行: 导入java.util.Scanner public class Spacing { public static void main(String[]args) { Scanner c=new Scanner(

我需要编写一个程序,要求用户输入符号之间的空格数。例如

&  &  &

&  &  &

&  &  &
用户将输入一个整数,符号之间的间距应更改。 我现在有以下代码正常运行: 导入java.util.Scanner

public class Spacing 
{
    public static void main(String[]args)

    {
        Scanner c=new Scanner(System.in);
        System.out.println("Enter spaces between stars: ");
        int l=c.nextInt();

        String a="*";
        String b=" ";

        for(int i=0;i<5;i++)
        {
            for(int j=0;j<l;j++)
            {
                System.out.print(a+b);
            }
            System.out.println();
        }
    }
}
公共类间距
{
公共静态void main(字符串[]args)
{
扫描仪c=新扫描仪(System.in);
System.out.println(“输入星星之间的空格:”);
int l=c.nextInt();
字符串a=“*”;
字符串b=“”;

对于(inti=0;i您需要另一个变量和另一个for循环

试试这个

public class Spacing 
{
    public static void main(String[]args)
    {
    Scanner c=new Scanner(System.in);
    System.out.println("Enter spaces between stars: ");
    int l=c.nextInt();



        String a="*";
        String b=" ";

        for(int i=0;i<5;i++)
        {
        for(int j=0;j<3;j++)
        {
            System.out.print(a);

             for(int k=0;k<l;k++)
             {
            System.out.print(b);
             }
        }
            System.out.println();
        }
     }
}
公共类间距
{
公共静态void main(字符串[]args)
{
扫描仪c=新扫描仪(System.in);
System.out.println(“输入星星之间的空格:”);
int l=c.nextInt();
字符串a=“*”;
字符串b=“”;
for(int i=0;i
for(int i=0;i
上面的代码将打印您输入的空格数

因此,您可以像这样使用它:

for(int i = 0; i < 3; i++)
{
   System.out.print("&");
   for(int j = 0; j < l; j++)
      System.out.print(" ");
}
for(int i=0;i<3;i++)
{
系统输出打印(&);
对于(int j=0;j
这将打印出来

&&
(最后一个
&
后面还有3个空格)
如果您在
l
中输入3,则以下内容可以提高可读性并在代码中引入一些模块化:

import java.util.Scanner;

public class Spacing {

    public static void main(String[]args) {

        Scanner scanner = new Scanner(System.in);
        System.out.println("Enter spaces between stars: ");
        int numSpaces =scanner.nextInt();
        String charToDisplay = "*";
        String spaces = buildNSpaces(numSpaces);
        int numberOfRows = 3;
        int numberOfCharactersPerRow = 3;

        for(int i = 0; i < numberOfRows; i++) {
            for(int j=0; j < numberOfCharactersPerRow; j++) {
                System.out.print(charToDisplay+spaces);
            }
            System.out.println();
        }
    }

    private static String buildNSpaces(final int numSpaces) {
        StringBuilder builder = new StringBuilder();
        for(int i = 0; i < numSpaces; i++) {
            builder.append(" ");
        }
        return builder.toString();
    }
}
import java.util.Scanner;
公共班级间隔{
公共静态void main(字符串[]args){
扫描仪=新的扫描仪(System.in);
System.out.println(“输入星星之间的空格:”);
int numSpaces=scanner.nextInt();
字符串charToDisplay=“*”;
字符串空间=构建空间(numSpaces);
int numberOfRows=3;
int numberOfCharactersPerRow=3;
for(int i=0;i
只需执行一次。如果没有任何类型的循环,您将如何执行此操作?然后我们可以从那里构建您需要的循环结构。嗯……我尝试通过为存储空间的b添加值来完成此操作。因此,我一直在添加b,这增加了空间的数量。这是您的意思吗?3绝对是多余的;我不认为你真的需要两个,但我可以教你。如果你想:1-控制行数2-控制字符数3-控制字符之间的空间,为什么在世界上3个循环是错误的???当你有太多的嵌套循环级别时,是时候重构成一个方法完全同意,但这是问题的解决方案
import java.util.Scanner;

public class Spacing {

    public static void main(String[]args) {

        Scanner scanner = new Scanner(System.in);
        System.out.println("Enter spaces between stars: ");
        int numSpaces =scanner.nextInt();
        String charToDisplay = "*";
        String spaces = buildNSpaces(numSpaces);
        int numberOfRows = 3;
        int numberOfCharactersPerRow = 3;

        for(int i = 0; i < numberOfRows; i++) {
            for(int j=0; j < numberOfCharactersPerRow; j++) {
                System.out.print(charToDisplay+spaces);
            }
            System.out.println();
        }
    }

    private static String buildNSpaces(final int numSpaces) {
        StringBuilder builder = new StringBuilder();
        for(int i = 0; i < numSpaces; i++) {
            builder.append(" ");
        }
        return builder.toString();
    }
}