Заполнить список или массив строк с помощью Scanner

я пытаюсь заполнить список строк с помощью Scanner, но всё упирается в то, что я нем могу выйти из метода nextLine, подскажите пожалуйста, как это исправить, или как можно заполнить массив строк, не используя список?

public class StringSort {

public static void main(String[] args) {

    Scanner sc = new Scanner(System.in);
    List<String> stringList = new ArrayList<>();

    while (sc.hasNextLine()){
        stringList.add(sc.nextLine());
        sc.next();

        if (stringList.get(stringList.size()-1) == "STOP"){
            System.out.println("хочешь выйти?");
            if (sc.nextLine() == "Yes"){
                break;
            }
            else{
                stringList.add("STOP");
            }
        }
    }
    System.out.println(stringList);
}

}


Ответы (1 шт):

Автор решения: Дмитрий
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class StringSort {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        List<String> stringList = new ArrayList<>();
        while (true) {
            String userInput = sc.nextLine();
            if ("stop".equalsIgnoreCase(userInput)) {
                System.out.println("Хочешь выйти?");
                if ("yes".equalsIgnoreCase(sc.nextLine())) break;
            }
            stringList.add(userInput);
        }
        System.out.println(stringList);
    }

}
→ Ссылка