Val*_*ffe 2 java arrays decimalformat
所以我的程序也做了我想要的所有事情,除了在随机数为临时数生成时只显示小数点后的2个位置(12.00).它现在正在做的是(12.1234567897654).
我是java的初学者,这是我自己完成的第一个程序,所以如果答案很明显,请不要吝啬D:
我试过printf和%.2f,但我不能让它工作
public class ArrayOfTemperatures
{
public static void main(String[] args)
{
double [] temp = new double [7];
double random = Math.random() * 100 + 1;
temp[0] = Math.random() * 100 + 1;
//Calculating average
int sum = 0;
for (int i = 0; i < temp.length; i++) {
temp[i] = Math.random() * 100 + 1;
sum += temp[i];
}
//average being stated
double average = (double) sum / temp.length;
System.out.println("The average temperature is " + average);
//Temperatures
for (int i = 0; i < temp.length; i++) {
temp[i] = Math.random() * 100 + 1;
System.out.print("Temperature " + (i + 1) + " is: " + temp[i]);
if (temp[i] > average){
System.out.println(" and is above average.");
}
else {
System.out.println(" and is below average.");
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
输出的一个例子是:
The average temperature is 42.714285714285715
Temperature 1 is: 14.71803486458223 and is below average.
Temperature 2 is: 33.10321474550992 and is below average.
Temperature 3 is: 18.661262675746727 and is below average.
Temperature 4 is: 82.12893152205741 and is above average.
Temperature 5 is: 90.97086140892438 and is above average.
Temperature 6 is: 19.609064446916477 and is below average.
Temperature 7 is: 75.47742502105827 and is above average.
Run Code Online (Sandbox Code Playgroud)
小智 5
如果您想将其用于显示目的,请使用java.text.DecimalFormat:
new DecimalFormat("#.##").format(dblVar);
Run Code Online (Sandbox Code Playgroud)
如果您需要它进行计算,那么:
Math.floor(value * 100) / 100
Run Code Online (Sandbox Code Playgroud)