2015-10-31 4 views
-2

У меня возникли проблемы с возможностью хранения информации, которую я хочу получить от пользователя, а затем вернуть те же самые данные в конце метода. Задача заключается в том, чтобы неоднократно просить пользователя назвать животных и сколько из указанных животных осталось в дикой природе. Затем я хочу, чтобы моя программа сохраняла эти входы без создания нескольких сотен переменных (проблема, о которой идет речь), а затем печатайте наименее опасное животное, когда цикл завершается.Хранение данных, вводимых пользователем

Если то, что я спрашиваю, неясно, вот фрагмент кода, который вызывает у меня проблемы:

while (!animals.equalsIgnoreCase("Exterminate")) 

{ 

    animals = input("Name an animal"); 

    if (animals.equalsIgnoreCase("EXTERMINATE")) 

    { 

    print("The least endangered animal is " + animals); 

    print("There are still " + numberAnimals + " left in the wild"); 

    break; 

    } 

    else 

    { 

    remaining = input("How many are left in the wild?"); 

    numberAnimals = Integer.parseInt(remaining); 

    } 

} 

Я знаю, что массивы могут решить эту проблему, но я не понимаю, как Я бы выполнил его в цикле while.

EDIT: Суть моей проблемы пытается найти способ, чтобы напечатать хотя бы под угрозой исчезновения животных, в конце цикла, поскольку, как он стоит, согласующего код «истреблять» печатается вместо животного

ответ

0

Вам нужно только обновлять две переменные, 1 переменную для хранения максимального количества животных, введенных пользователем до сих пор, 1 переменную для сохранения наименования животного с максимальным числом:

String animals = input("Name an animal"); 

    int numberAnimals; 
    int maxNumAnimals = Integer.MIN_VALUE; // initialize as the smallest int value 

    String leastEndangeredAnimal = ""; 
    while (!animals.equalsIgnoreCase("Exterminate")) { 
      remaining = input("How many are left in the wild?"); 
      numberAnimals = Integer.parseInt(remaining); 
      if (maxNumAnimals < numberAnimals) { 
       maxNumAnimals = numberAnimals; 
       leastEndangeredAnimal = animals; 
      } 
     animals = input("Name an animal"); 
    } 

    print("The least endangered animal is " + leastEndangeredAnimal); 

    print("There are still " + maxNumAnimals + " left in the wild");