【发布时间】:2019-09-28 23:05:16
【问题描述】:
课堂作业:编写一个计算棒球运动员击球率的方法。我需要输出为 0.345,但我一直得到 0.345。如何格式化此输出,以便在小数点前不显示前导零?感谢您提供的任何帮助。
这是我的 BaseballPlayer 类中的代码:
//BaseballPlayer parameters
String name;
int number;
int singles;
int doubles;
int triples;
int homeRuns;
int atBats;
int walks;
int sacrificeFlies;
//DecimalFormat
static DecimalFormat df = new DecimalFormat(".000");
//BaseballPlayer constructor method
public BaseballPlayer(String name, int number, int singles, int triples, int homeRuns, int atBats, int walks,
int sacrificeFlies)
{
this.name = name;
this.number = number;
this.singles = singles;
this.triples = triples;
this.homeRuns = homeRuns;
this.atBats = atBats;
this.walks = walks;
this.sacrificeFlies = sacrificeFlies;
}
public double getBattingAverage()
{
return Double.parseDouble(df.format( (double) ( singles + doubles + triples + homeRuns ) / atBats) );
}
这是我的主类中的代码:
BaseballPlayer player01 = new BaseballPlayer( "Mr. Business",13,12,13,4,84,63,7);
System.out.println(player01.getBattingAverage());
我的输出:
运行:
0.345
构建成功(总时间:0 秒)
【问题讨论】:
-
您的代码 sn-p 没问题,问题出在代码的其他地方。也许发布您的输出结果的声明?
-
感谢您的帮助。我在我的 BaseballPlayer 类和主类中发布了代码。
标签: java methods decimalformat