1

我正在编写一个二十一点程序来保存用户信息,例如赢得的手数、玩过的手数、留给玩家的钱以及他们的名字。输出应该是正确的,即使它们正在改变。我目前的代码是:

    System.out.format("%s \t \t \t %s %n", "Name:", playerName);
    System.out.format("%s \t \t %d %n", "Hands Played:", playerHands);
    System.out.format("%s \t \t %d %n", "Hands Won:", playerWins);
    System.out.format("%s \t \t \t %.2f %n", "Money:", playerMoney);

这让他们在屏幕中间证明了他们的合理性,但我已经没有其他可以做什么的想法了。

附加问题:为什么第 2 和第 3 个打印语句只需要 2 个“\t”?我认为这与它们前面的字符串的长度有关,但是有没有硬性规定呢?

4

1 回答 1

4

这应该有助于:

System.out.format("%15s  %-15s %n", "Name:", playerName);
System.out.format("%15s  %-15d %n", "Hands Played:", playerHands);
System.out.format("%15s  %-15d %n", "Hands Won:", playerWins);
System.out.format("%15s  %-15.2f %n", "Money:", playerMoney);

输出:

          Name:  Player 1        
  Hands Played:  10              
     Hands Won:  2               
         Money:  15.05      
于 2016-02-22T00:25:07.540 回答