0

所以我在这里遗漏了一些东西。我有一种方法可以计算并返回股票投资组合的价值。但它使用一个混合数字,有一个美元部分和一个八分之一部分

public class StockPortfolio
{
  //Instance Vars 
  private String company;
  private int numOfShares;
  private int dollarSharePrice;
  private int eighthsSharePrice;

  public int portfolioValue()
  {
   int portVal = (dollarSharePrice * numOfShares) 
                 + (eighthsSharePrice * numOfShares) / 8;

   System.out.printf("Opening portfolio value: $%.2f" , portVal);

   return portVal;
  }

对于测试类,值是100for numOfShares37fordollarSharePrice5for eighthsSharePrice

预期的输出应如下所示:

开放投资组合价值:3762.50 美元

我真正的麻烦是打印 .50。我尝试以不同的方式使用 % 但无济于事。感谢任何为我指明正确方向的帮助。我在这里束手无策。

4

2 回答 2

0
float portVal = (float)9/4;
System.out.printf("Opening portfolio value: $%.2f" , portVal);

输出:

Opening portfolio value: $2.25
于 2013-10-16T04:33:11.983 回答
0

不要使用portVal来打印。通过这样做直接打印它

System.out.printf("Opening portfolio value: $%.2f", (float)((dollarSharePrice * numOfShares) + (eighthsSharePrice * numOfShares) / 8));
于 2013-10-16T04:48:24.063 回答