Java Ascii表空间
我有一个ASCII表,我想把它放到一个可以放置输入而不影响空格的地方Java Ascii表空间,java,Java,我有一个ASCII表,我想把它放到一个可以放置输入而不影响空格的地方 System.out.println("._________________________."); System.out.println("|" + playerOneName + " " + "|"); System.out.println("|-------------------------|"); System.out.println("|Win
System.out.println("._________________________.");
System.out.println("|" + playerOneName + " " + "|");
System.out.println("|-------------------------|");
System.out.println("|Wins "+ playOneWin + "|");
System.out.println("|Losses " + playOneLoss + "|");
System.out.println("|_________________________|");
我知道这在上下文中是没有意义的,但如果我随意取一个像约翰这样的名字。这是输出
System.out.println("._________________________.");
System.out.println("|John |");
System.out.println("|-------------------------|");
System.out.println("|Wins 12|");
System.out.println("|Losses 3|");
System.out.println("|_________________________|");
忽略System.out.println()在第二个示例中,它只是用来设置结构。我的问题是,如果有意义的话,我如何让|与其余部分对齐,让名称不编辑空格
谢谢所以你基本上想要填充字符串 如果字符串短于某个长度,则需要向其添加字符(向左或向右),使其达到该长度。对吧? 使用
System.out.printf
System.out.printf("%-10s|", "John"); // padding to the right
这将产生
John |
如果希望长度有所不同,请将10
更改为其他值
对于赢家和输家的数量,您可以将数字填入左侧:
int playOneWin = 12;
int losses = 3;
System.out.printf("|Wins%21s|%n", playOneWin); // note that the "-" is gone, signifying padding left
System.out.printf("|Losses%19s|", losses); // 19 is written here because "Losses" has 2 more letters than "Wins",
// so we pad the string for 2 fewer characters
输出:
|Wins 12|
|Losses 3|
您需要对
String#format
和格式说明符进行一些研究-可能类似于我在printf参数中建议的%n
而不是\n
。你不知道自己是在Linux还是Windows上。@KlitosKyriacou编辑。