Как вы получаете имя самого старого человека, используя разделенные строки и массив в Java - PullRequest
1 голос
/ 31 марта 2020

Я слишком долго смотрел на эту проблему .. Это упражнение из https://java-programming.mooc.fi/part-3/4-using-strings, и мне нужно узнать имя самого старого человека, разделив строки и найдя имя с помощью самый старый возраст.

> Sample Input: Johnny, 5
>               Rose, 19
>               Sam, 10

Желаемый результат: Роза

Любая помощь будет искренне оценена. Спасибо!

import java.util.Scanner;

public class NameOfTheOldest {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        String name = "";

        while (true) {

            String input = scanner.nextLine();

            if (input.equals("")) {

                break;

            }

            String[] pieces = input.split(",");

            int age = Integer.valueOf(pieces[1]);

            int oldest = 0;

            if (age > oldest) {

                name = pieces[0];

                oldest = age;

            }
        }

        System.out.println("Name of the oldest: " + name);
    }
}

1 Ответ

2 голосов
/ 31 марта 2020

Вы поместили объявление переменной для oldest внутри l oop, так что каждый раз, когда читается новая строка ввода, oldest сбрасывается в 0, если вы перемещаете это за время, пока l oop, ваш код должен работать как есть.

...