Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 跳过输入的第一个值_Java - Fatal编程技术网

Java 跳过输入的第一个值

Java 跳过输入的第一个值,java,Java,我想写一个程序,读取用户输入的一组值。然后我要打印最小值、最大值、总和和平均值。见下文: float largest = in.nextFloat(); float smallest = largest; while (inputs != -1) \\-1 is the sentinel { inputs = in.nextFloat(); if (inputs !=-1)

我想写一个程序,读取用户输入的一组值。然后我要打印最小值、最大值、总和和平均值。见下文:

        float largest = in.nextFloat();
        float smallest = largest;
        while (inputs != -1) \\-1 is the sentinel 
        { 
            inputs = in.nextFloat();
            if (inputs !=-1)
            {
                sum = sum + inputs;
                counter++;
                if (inputs > largest)
                {
                    largest = inputs;
                }
                if (inputs < smallest)
                {
                    smallest = inputs;
                }

            }

        }
float max=in.nextFloat();
浮动最小=最大;
而(输入!=-1)\\-1是哨兵
{ 
inputs=in.nextFloat();
如果(输入!=-1)
{
总和=总和+输入;
计数器++;
如果(输入>最大值)
{
最大=输入;
}
if(输入<最小值)
{
最小=输入;
}
}
}
这不管用。发生的情况是,对于总和,第一个输入不被计数。例如,集合12345-1的总和是14而不是15(请记住-1是哨兵)。我想我知道这是为什么,因为用户输入的第一个值将用于初始化“float max”,然后第二个值将是第一个进入“inputs”的值


然而,即使我怀疑我知道这个错误,我也不知道如何修复它。我尝试将前两行代码移动到while循环中,但这会导致很多错误,而这些错误不会导致任何结果。知道怎么做吗?

代码的第一行是检索值并移动光标

您需要在循环之前初始化总和:

float largest = in.nextFloat();
float smallest = largest;
float sum = largest;

看,我怀疑我知道这个错误?@o你重复了问题中的一句话,是的。