如何删除打印行之间的空格?

时间:2015-11-03 21:39:08

标签: java println

我创建了这个程序,以帮助在我正在创建的文本冒险中绘制地图。到目前为止,它所做的只是绘制你输入的黑色方格的拘留。有没有办法去除每条线之间的空间,因此没有白线穿过正方形?

这是我的代码:

import java.util.Scanner;

public class MapGrid {

    static String createGrid(int x, int y) {
        String output = "";
        String block = new String("\u2588\u2588"); //A string of two unicode block symbols: ██

        if(x * y != 0) { //If neither x nor y is 0, a map of length x and height y will be returned
            for(int n = 1; n <= y; n++) {
                for(int i = 1; i <= x; i++) {
                    output += block;
                }
                output += "\n";
            }
        }
        return output;
    }

    public static void main(String[] args) {
        // TODO Auto-generated method stub

        try(Scanner sc = new Scanner(System.in)) {

            System.out.println("Please enter the length of your map");
            int length = sc.nextInt();

            System.out.println("Please enter the height of your map");
            int height = sc.nextInt();

            System.out.println(createGrid(length,height));
        }
    }

}

这是用户输入5和5时打印的内容:

enter image description here

我拍了一张截图,因为很难看到我用这个字体说的是什么

每个新的块行之间有一个小的间隙,使它看起来不正确。可能没有办法解决这个问题,但我想我会问以防万一。

1 个答案:

答案 0 :(得分:5)

您可能希望将System.out重定向到其他位置 如果您想使用Swing,那么您可以查看here

然后这是你重定向的另一个地方的责任 但是现在它只是IDE的一部分( Eclipse )。它独立于 Java 逻辑。

如果你认真对待它。您不想在 Eclipse IDE中播放文本冒险。因此,如果您使用 Windows ,下一个问题是您是否要使用窗口命令行。这可能已经足够你了。但我仍然建议您首先考虑一下您希望在哪种窗口输出文本