如何为数组索引中的每个数字显示XXX | XXX?-JAVA

如何为数组索引中的每个数字显示XXX | XXX?-JAVA,java,Java,所以我有NIM游戏程序。基本上,有四堆,两个玩家必须不断地从堆中取石头,直到其中一个输。现在我的堆在输出中是这样的 董事会:[1,2,3,4] 但我需要修改它,使它看起来像这样 XXX|XXX XXX|XXX XXX|XXX XXX|XXX XXX|XXX XXX|XXX XXX|XXX XXX|XXX XXX|XXX XXX|XXX 这是我的密码 System.out.print("&q

所以我有NIM游戏程序。基本上,有四堆,两个玩家必须不断地从堆中取石头,直到其中一个输。现在我的堆在输出中是这样的

董事会:[1,2,3,4]

但我需要修改它,使它看起来像这样

                        XXX|XXX
                XXX|XXX XXX|XXX
        XXX|XXX XXX|XXX XXX|XXX
XXX|XXX XXX|XXX XXX|XXX XXX|XXX
这是我的密码

System.out.print("");
    for(int i = 0; i<4; i++)
    {
        //System.out.println(i);
        for(int j = 0; j < numbers[i];j++)
        {
            //System.out.println(j);
            
            System.out.print(" XXX|XXX ");
            
            
            
        }
        
        System.out.println(" ");
        
    }
    
它打印了这个

XXX | XXX

XXX | XXX XXX | XXX

XXX | XXX XXX | XXX XXX | XXX

XXX | XXX XXX | XXX XXX | XXX XXX | XXX


建议?

类似的建议可以帮助你

public static void main(String[] args) {
        int [] board={1,2,3,4};
       
        for (int i = 0; i < board.length; i++) {
            for (int j = 0; j < board[i]; j++) {
                System.out.print("XXX|XXX ");
            }
            System.out.println("");
            
        }
    }
通过使用数组和String.join方法,可以创建长度为线路板数组中最后一个数字的数组。这确保了输出中包含的所有字符串都具有相同的长度-没有丑陋的、意外的单个字符偏移。然后,您可以循环遍历小于桩阵列长度的数字,并检查该位置是否应为空格或填充XXX | XXX

之后,您将拥有如下所示的数组:

{"       ","       ","       ","XXX|XXX"}
{"       ","       ","XXX|XXX","XXX|XXX"}
{"       ","XXX|XXX","XXX|XXX","XXX|XXX"}
{"XXX|XXX","XXX|XXX","XXX|XXX","XXX|XXX"}

int[]板={1,2,3,4}; 对于int i:电路板{ 字符串[]桩=新字符串[board[board.length-1]]; 对于int x=0;x
                        XXX|XXX
                XXX|XXX XXX|XXX
        XXX|XXX XXX|XXX XXX|XXX
XXX|XXX XXX|XXX XXX|XXX XXX|XXX

此循环还可以支持任意长度的电路板,只要电路板中的每一项增加1。

请共享与错误无关的完整代码。当我这样做时,它不会打印出来。这是我正在使用的代码,其中有错误。我已经更新了代码。你是否将我答案中的代码复制并粘贴到你的主方法中?你说的没有打印出来是什么意思?