如何自定义字母间的空格

时间:2012-12-12 06:30:23

标签: java format

当我编写代码时,我有一个问题,如何自定义字母之间的空格?

这是我的代码:

代码: System.out.print('\ t'); 使字母之间的空格为一个标签
以下代码的输出如下:

1 ### A ### B ### C ### D
2 ### A ### B ### C ### D
3 ### A ### B ### C ### D
4 ### A ### B ### C ### D
5 ### A ### B ### C ### D
6 ### A ### B ### C ### D
7 ### A ### B ### C ### D

public static void main(String[] args)
{
    char[][] seat = new char[7][5];

    for (int row=0; row<7; row++){
        seat[row][0] = (char)('1' + row);
        }

    for (int row=0; row<7; row++){
        for (int col=1; col<5; col++){
            seat[row][col] = (char)('A'+ col-1);
        }
    }

    for (int row=0; row<7; row++){
        for (int col=0; col<5; col++){
            System.out.print(seat[row][col]);
            System.out.print('\t');
        }
        System.out.println("");
    }

3 个答案:

答案 0 :(得分:1)

尝试

         ...
    for (int row=0; row<7; row++){
        for (int col=0; col<5; col++){
            System.out.printf("%-8s", seat[row][col]);
        }
        System.out.println("");
    }
         ...

输出

1       A       B       C       D       
2       A       B       C       D       
3       A       B       C       D       
4       A       B       C       D       
5       A       B       C       D       
6       A       B       C       D       
7       A       B       C       D       

请参阅java.util.Formatter API以了解有关格式化选项的更多信息

答案 1 :(得分:0)

选择string并替换字符以对其进行自定义,并将其放入您的Sop语句中,如System.out.print(chars);而不是System.out.print("\t");

像这样重写你的代码

public static void main(String[] args)
{
    char[][] seat = new char[7][5];
    String chars = "###";
    for (int row=0; row<7; row++){
        seat[row][0] = (char)('1' + row);
        }

    for (int row=0; row<7; row++){
        for (int col=1; col<5; col++){
            seat[row][col] = (char)('A'+ col-1);
        }
    }

    for (int row=0; row<7; row++){
        for (int col=0; col<5; col++){
            System.out.print(seat[row][col]);
            System.out.print(chars);
        }
        System.out.println("");
    }

答案 2 :(得分:0)

使用String.format(...),这可能有帮助(如果我理解你的问题)。