Я беру вступительный класс программирования с языком Java.Задание, над которым мы работаем, ставит меня в тупик.У меня есть цикл while , запрашивающий числовые значения, который заканчивается, когда вводится строковое значение, то есть
while (sc.hasNextDouble())
{...}
За ним следует другой вход сканера, который использует
if (sc.hasNextLine())
Проблема в том, что я использую строку для завершения верхнего цикла , в то время как , который затем немедленно используется сканером.Я попытался использовать оператор if / else для верхнего цикла с явным оператором break; , но это не сработало.Независимо от того, что я делаю, это все еще передается.Как мне подойти к этому?Любые указатели приветствуются.
РЕДАКТИРОВАТЬ: По запросу, вот некоторые из фактического кода.Имейте в виду, что это для произвольного присвоения класса, поэтому оно может не иметь большого смысла.
//Request user input
System.out.print("Please enter multiple double values. Enter q or any non double value to quit.");
double doubleValue = 0.00; //declare doubleValue variable (for each entered double value)
double sum = 0.00; //declare starting sum value variable at 0.00
double doubleAverage = 0.00; //declare average of doubles variable
//declare largest double value variable as MIN_VALUE to ensure any entered value is larger
double largestDouble = Double.MIN_VALUE;
//declare smallest double value variable as MAX_VALUE to ensure any entered value is smaller
double smallestDouble = Double.MAX_VALUE; //declare smallest double value variable
int count = 0; //set starting count
while (sc.hasNextDouble())
{
doubleValue = sc.nextDouble();
//System.out.print("Please enter another double value. Enter -1 to stop entering values.");
sum = sum + doubleValue;
count++;
}
/*
* This section prompts the user for their first name and printd it in reverse.
*/
System.out.print("Please enter your first name:");
String fName = ""; //declare fName variable before requesting input
if (sc.hasNext())
{
fName = sc.next();
…
После этого значение String используется для завершения цикла while, который я использовал дляоператор if в конце.