Java中的奇数输出(最有可能出现noobie错误)

Java中的奇数输出(最有可能出现noobie错误),java,output,Java,Output,这将是我在这里的第二个问题;我尽量不问,因为我不想在家庭作业上得到帮助。但我只是被卡住了 我目前正在编写一个程序,用于存储和更新一些示例银行帐户的信息。我的问题是,不知何故,我的输出有两个小数点 示例: “2000.02008.3333” 旁注:我在上Tier II java课程,所以是的,我的代码不是最漂亮的。此外,请只提供提示,我应该在哪里进行更改。正如我之前所说,我非常努力地不寻求帮助,我不希望我的帮助请求被误解为作弊。最后,我确实知道syso格式,并将使用我的驱动程序中的标题信息来实现这

这将是我在这里的第二个问题;我尽量不问,因为我不想在家庭作业上得到帮助。但我只是被卡住了

我目前正在编写一个程序,用于存储和更新一些示例银行帐户的信息。我的问题是,不知何故,我的输出有两个小数点

示例: “2000.02008.3333”

旁注:我在上Tier II java课程,所以是的,我的代码不是最漂亮的。此外,请只提供提示,我应该在哪里进行更改。正如我之前所说,我非常努力地不寻求帮助,我不希望我的帮助请求被误解为作弊。最后,我确实知道syso格式,并将使用我的驱动程序中的标题信息来实现这一点。当时我在那里做的方式对我来说只是更快,而我充实了其余的细节

非常感谢您提供的任何帮助

以下是我当前的代码:

public class SavingsAccount
{
  private static double annualInterestRate;
  private final int ACCOUNT_NUMBER;
  private double balance;

  public SavingsAccount(int ACCOUNT_NUMBER, double balance)
  {
    this.ACCOUNT_NUMBER = ACCOUNT_NUMBER;
    this.balance = balance;
  }

  public static double setAnnualInterestRate(double aIR)
  {
    annualInterestRate = aIR;
    return annualInterestRate;
  }

  public int getAccountNumber()
  {
    return ACCOUNT_NUMBER;
  }

  public double getBalance()
  {
    return balance;
  }

  public double addMonthlyInterest()
  {
    balance += (balance * annualInterestRate / 12);
    return balance;
  }
}
司机

public class Chapter13
{
  public static void main(String[] args)
  {
    double annualInterestRate = .05;

    SavingsAccount saver1 = new SavingsAccount(10002, 2000);
    SavingsAccount saver2 = new SavingsAccount(10003, 3000);
    SavingsAccount.setAnnualInterestRate(annualInterestRate);
    System.out.println("Month    Acount#    Balance     Account#     Balance");

    for(int i = 0; i < 13; i++)
    {
      System.out.println(i + "    " + saver1.getBalance() + 
          saver1.addMonthlyInterest());
    }
  }
}
公共类第13章
{
公共静态void main(字符串[]args)
{
双年度利率=.05;
SavingsAccount saver1=新的SavingsAccount(100022000);
SavingsAccount saver2=新的SavingsAccount(10003,3000);
SavingsAccount.setannualinterestate(annualinterestate);
System.out.println(“月账户#余额账户#余额”);
对于(int i=0;i<13;i++)
{
System.out.println(i+“”+saver1.getBalance()+
saver1.addMonthlyInterest());
}
}
}

这是因为
余额
年度利率
之间没有任何空格。在它们之间添加选项卡或空格,以便单独打印

System.out.println(i + "    " + saver1.getBalance() + "\t" // tab
          saver1.addMonthlyInterest());
System.out.println(i + "    " + saver1.getBalance() + " " // space
          saver1.addMonthlyInterest());

这是为一名新生准备的第一个Java练习之一。我也写了同样的书,这个问题通常是一个学生冲在前面,没有阅读或理解,只是想要快速的答案;这正是发生的事情!!!!非常感谢你!你知道为什么它使用了一个没有空间的周期吗?这是某种Java约定吗?@ZachFiedler-不,它不使用句点作为默认分隔符。余额和年利率都是双值,因此它们都有小数点。因为两者都是在没有空格的情况下打印出来的,所以你可以看到两个数字,每个数字都有小数点。user2860598-到目前为止,我已经阅读了我书中的所有章节,所有代码都是我自己写的。真的很难相信我不知道这样一个概念吗?另外,请注意,我甚至说我不是在寻找直接的答案,而是在暗示我错在哪里。@R.J啊,我现在明白了!我有一些来自我试图匹配的讲师的输出,第一个数字正好出现。我想我只是太沉迷于双十进制的事情,以至于没有注意到它们都在那里,即使没有格式。再次非常感谢!