下面的代码经过测试,运行良好,直到我添加了DecimalFormat。现在它出错了,说找不到符号“twoDigitPattern”。我尝试使用+DecimalFormat(平均值),但也出现了错误。
class IntegerInputWithCkAndAverage
{
public static void main( String[] args )
{
final int SENTINEL = 0;
int numEntered = 0;
int accumulator = 0;
int counter = 0;
double average = 0;
Scanner scan = new Scanner( System.in );
System.out.print( "Enter a integer, or 0 to end > " );
while( !scan.hasNextInt() ) {
String garbage = scan.nextLine();
System.out.
print( "Invalid input. Please enter an integer, or 0 to end" );
}
numEntered = Integer.parseInt( scan.nextLine() );
while( numEntered != SENTINEL ) {
accumulator = accumulator + numEntered;
counter++;
System.out.print( "Enter another integer, or 0 to end> " );
while( !scan.hasNextInt() ) {
String garbage = scan.nextLine();
System.out.print(
"Invalid input. Please enter an integer or 0 to end" );
}
numEntered = Integer.parseInt( scan.nextLine() );
}
average = (double) accumulator / counter;
DecimalFormat twoDigitPattern = new DecimalFormat( "#0.00" );
System.out.println(
"the total of the " + counter + "numbers entered is " +
accumulator + " and the average is " + twoDigitPattern( average ) );
}
}