Это прекрасно работает, если заполнен список priobann :
banns << priobann?.pop()
Однако, если он пуст, я получаю исключение: java.util.NoSuchElementException: Невозможно вывести () пустой список
Разве вопросительный знак после приобанн не должен избегать этого исключения?
Нет,?остановит вызываемый метод, только если ссылка равна нулю.В этом случае ссылка не является нулевой, но объект, на который ссылается, является пустым списком.
Очевидно, вы не можете вызвать pop() для пустого списка, потому что нечего удалять.
pop()