Java整数平均数

Java整数平均数,java,Java,我似乎很难弄清楚在read-value方法下如何设置变量intValue。程序应该取10个整数并求其平均值,它可以很好地捕捉异常和输入,但输出将所有数字显示为0(因为我暂时将其设置为0,但无法确定将其更改为什么)。这是密码 软件包驱动程序 import static java.lang.Integer.parseInt; import java.util.Scanner; public class AverageOfIntegers { //Declare variables pr

我似乎很难弄清楚在read-value方法下如何设置变量intValue。程序应该取10个整数并求其平均值,它可以很好地捕捉异常和输入,但输出将所有数字显示为0(因为我暂时将其设置为0,但无法确定将其更改为什么)。这是密码 软件包驱动程序

import static java.lang.Integer.parseInt;
import java.util.Scanner;

public class AverageOfIntegers {
   //Declare variables
   private int numberOfValues;
   private int[] integerValues;
   private double average;

   public AverageOfIntegers(int numberOfValues){
   this.numberOfValues = numberOfValues;

   }
   //Define the readValues()
   public void readValues(){
   String stringValue = null;
   int intValue = 0, i;
   Scanner console = null;
   i = 0;
   integerValues = new int[numberOfValues];
      while(i < numberOfValues){
         try
         {
            console = new Scanner(System.in);
            System.out.print("Enter value : ");
            //read the value
            stringValue = console.nextLine();
            //check for number
            intValue = 0;
            parseInt(stringValue);
            //Store only integer values
            integerValues[i++] = intValue;
         }
         catch(NumberFormatException ex)
         {
            //Catch exception and handle it
            System.out.println("Invalid Number entered" + "Reenter again ");
            continue;
         }
         }
         }
   //read integer values
         public void printValues()
         {
            System.out.println("Given values are ");
            for (int i = 0; i < numberOfValues; i++)
            {
               System.out.println("Number: " + (i + 1) + " = " + 
integerValues[i]);

            }
         }
         public double getAverage()
         {
            int sum = 0;
            //Calcualte the sum of integer values
            for (int i = 0; i < numberOfValues; i++)
            {
               sum += integerValues[i];
            }
            //calculate average 
            average = (double)sum / numberOfValues;
            return(average);

         }
      }
导入静态java.lang.Integer.parseInt;
导入java.util.Scanner;
整数的公共类平均数{
//声明变量
私有整数值;
私有int[]整型值;
私人双平均;
整数的公共平均值(整数数值){
this.numberOfValues=numberOfValues;
}
//定义readValues()
public void readValues(){
字符串stringValue=null;
int值=0,i;
扫描仪控制台=空;
i=0;
integerValues=新的整数[numberOfValues];
while(i

编辑*问题似乎被标记为重复,但我不是在问为什么分母大于分子的两个整数的除法得到0。

更改

        //check for number
        intValue = 0;
        parseInt(stringValue);

        //check for number
        intValue = parseInt(stringValue);

您希望
parseInt(stringValue)
如何神奇地跳入
intValue
?阅读
parseInt()
的文档可能会有所帮助。如果您只担心扫描仪用户控制台中的整数,请使用.nextInt(),而不是进行字符串到数字的转换。@KenWhite神奇地跳入intValue,lol:DVoting关闭该问题,因为它不太可能帮助未来的访问者。