Я разрабатываю программу для класса.Создание условного оператора для ввода со сканером
Мне нужно прочитать вход пользователя, используя класс сканера. Мне нужно передать эти данные в список массивов с циклом while. В моем цикле while мне нужен условный оператор, чтобы проверить, введен ли 0 или отрицательное число.
Если пользователь вводит отрицательное число или 0, концы петли и код переходит на следующий процесс ...
Проблемы я в настоящее время сталкивается являются:
-Все мой вход значения не обрабатываются
-I должны ввести значение 0 3 раза, чтобы выйти из цикла
-0 в настоящее время передается через мой список массива, который я не хочу
Вот мой код до сих пор:
import java.util.*;
public class questionAvg3
{
public static void main(String[]args)
{
Scanner input_into = new Scanner(System.in);
ArrayList<Integer> collector = new ArrayList<Integer>();
System.out.println("Enter 0 or a negative number to end input");
System.out.println("Enter a positive integer to populate the arraylist");
while ((input_into.nextInt() !=0) || (input_into.nextInt() < 0)){
System.out.println("Type another int or exit");
collector.add(input_into.nextInt());
}
int minValue = collector.get(0);
int maxValue = collector.get(0);
//int avgValue = collector.get(0);
//int total = 0;
for(Integer i: collector){
if(i < minValue) minValue = i;
if(i > maxValue) maxValue = i;
}
System.out.println("The max value int is: " + maxValue);
System.out.println("The min value int is: " + minValue);
}
}
Отлично, спасибо. И для того, чтобы помочь мне лучше понять и решить мою проблему. – AnthonyJ
@ AnthonyJ Очень приветствую, Энтони! –
@AnthonyJ Я бы посоветовал вам изменить цикл на то, что у меня выше, его немного легче читать и на самом деле лучше по производительности, потому что вы делаете меньшее сравнение за итерацию, чем ваша начальная настройка цикла. –