Java-Hangman ASCII 艺术奇怪的输出

Java-Hangman ASCII Art Strange Output

我在 java 开始制作刽子手游戏。
我希望能够根据用户是否输入错误字符来调用我的方法状态。
我正在测试所有状态以确保它们正确显示。
状态 1 和 2 显示正确,但 3-5 显示不正确。

代码如下:

public void state_1() {
        System.out.println(" \n"
                + " ------\n"
                + "|      |\n"
                + "|      O\n"
                + "|\n"
                + "|\n"
                + "|\n"
                + "|\n"
                + "|\n"
                + "|\n"
                + "|");
        System.out.println("\n"
                + "");
    }
    public void state_2() {
        System.out.println(" \n"
                + " ------\n"
                + "|      |\n"
                + "|      O\n"
                + "|      |\n"
                + "|      |\n"
                + "|      |\n"
                + "|\n"
                + "|\n"
                + "|\n"
                + "|");
        System.out.println("\n"
                + "");
    }
    public void state_3() {
        System.out.println(" \n"
                + " ------\n"
                + "|      |\n"
                + "|      O\n"
                + "|      |\n"
                + "|      |\n"
                + "|      |\n"
                + "|      |\n"
                + "|     / \n"
                + "|    /   \n"
                + "|   /     \");
        System.out.println("\n"
                + "");
    }
    public void state_4() {
        System.out.println(" \n"
                + " ------\n"
                + "|      |\n"
                + "|      O  /\n"
                + "|      | /\n"
                + "|      |/\n"
                + "|      |\n"
                + "|      |\n"
                + "|     / \n"
                + "|    /   \n"
                + "|   /     \");
        System.out.println("\n"
                + "");
    }
    public void state_5() {
        System.out.println(" \n"
                + " ------\n"
                + "|      |\n"
                + "|   \  O  /\n"
                + "|    \ | /\n"
                + "|     \|/\n"
                + "|      |\n"
                + "|      |\n"
                + "|     / \n"
                + "|    /   \n"
                + "|   /     \");
        System.out.println("\n"
                + "");
    }

这是奇怪的输出:

 ------
|      |
|      O
|
|
|
|
|
|
|



 ------
|      |
|      O
|      |
|      |
|      |
|
|
|
|



 ------
|      |
|      O
|      |
|      |
|      |
|      |
|     / \n|    /   \n|   /     \



 ------
|      |
|      O  /
|      | /
|      |/
|      |
|      |
|     / \n|    /   \n|   /     \



 ------
|      |
|   \  O  /
|    \ | /
|     \|/
|      |
|      |
|     / \n|    /   \n|   /     \

我确信有一些简单的事情要做,但我不确定,因为我知道在创建新行“\n”之前它的 \ 部分有问题。
我需要你的帮助才能解决这个问题。

"\n" 在打印输出中生成文字 \n

如果你想要一个 \ 和一个换行符,即 "\\n",你在其中转义斜杠,然后放置换行符。

您也可以单独 println() 每行。仍然需要转义反斜杠,不过

    System.out.println();
    System.out.println(" ------ ");
    System.out.println("|      |");
    System.out.println("|      O");
    ...
    System.out.println("|    /   \");
    System.out.println("|   /     \");