Я работаю над программой, которая позволяет вводить начинки для пиццы. Это в значительной степени завершено, за исключением метода removeToppings ().
Проблема в том, что я не могу найти правильный способ удалить начинки в индексе, который выбирает пользователь, и все начинки ДО этого. Я нашел множество способов удалить индексы, которые приходят ПОСЛЕ , но даже тогда я не могу найти способы их отменить.
Вот метод, о котором идет речь:
public static void removeTopping()
{
Scanner in = new Scanner(System.in);
printPizza();
System.out.println("What topping do you want to remove?\n"
+ "Keep in mind, this loses everything else above it.\n"
+ "Enter index number: ");
int remove = in.nextInt();
toppings.subList(remove, toppings.size()).clear(); //this is the problem line!
}
Метод printPizza () выведет что-то похожее на это:
|index|topping|
| 0 | cheese
| 1 | three
| 2 | cheese
| 3 | two
| 4 | cheese
| 5 | one
| 6 | sauce
| 7 | crust
Скажем, я ввожу 5, программа удалит индексы 5, 6 и 7. Я бы хотел, чтобы он удалил 0-5 , Любые указатели будут высоко оценены.