Java 小数点位置的问题。我有一个forumla,需要平均值在小数点后的右边

Java 小数点位置的问题。我有一个forumla,需要平均值在小数点后的右边,java,decimal,operation,Java,Decimal,Operation,所以我想我基本上得到了你想要得到的。我不能让平均数前面没有零,但击球平均数和击球百分比都有3位小数。基本上我修正的是将At-bats(bats)变成一个双倍值而不是一个整数,并将模函数变成除法。下面是代码的样子 batavg = (single + Double + triple + hr) % bats; slug = ((single) + (Double*2) + (triple*3) + (hr*4)) % bats; System.out.println("

所以我想我基本上得到了你想要得到的。我不能让平均数前面没有零,但击球平均数和击球百分比都有3位小数。基本上我修正的是将At-bats(bats)变成一个双倍值而不是一个整数,并将模函数变成除法。下面是代码的样子

  batavg = (single + Double + triple + hr) % bats;
  slug = ((single) + (Double*2) + (triple*3) + (hr*4)) % bats;
  
  System.out.println("Player name: " + player);
  System.out.printf("The currnet players batting average is: %.3f\n",  batavg);
  System.out.printf("The current players Slugging Average is : %.3f\n", slug);

如果你有任何问题,请告诉我。祝你好运。

你确定要使用
%
?你说“平均值必须在小数点后的右边”是什么意思?你能给出一个输入和输出的示例吗?那么你希望340.000是340.000?340.5或340.9怎么样?340是我想要的样子。所以把你的数字除以1000?
//code for each int of hits are not shown

double bats = 35.0;   //this is used as a baseline
String player = "PLAYER";
double batavg;
double slug;
batavg = (single + Double + triple + hr) / bats;  //division sign used instead of % 
//(modulus will not work for this)
slug = ((single) + (Double*2) + (triple*3) + (hr*4)) / bats;

System.out.println("Player name: " + player);

System.out.printf("The current players batting average is: %.3f\n",  batavg);  
  //now there will be a decimal and 3 numbers after
System.out.printf("The current players Slugging Percentage is : %.3f\n", slug);