Как уже говорили другие, если вы уверены, что не будет больше элементов, вы можете изменить ветку else на throw IllegalStateException("Fragment $position is not correct")
.Попытка использовать и enum или запечатанный класс, чтобы сделать случай исчерпывающим, просто переместит эту проблему в функцию, которую вы используете для преобразования Int в новый ограниченный тип.
Другой вариант, если вы полностью уверены, что выиграли 'Больше никаких вариантов, и вы хотите сохранить краткое объявление - использовать выражение if:
fun getItem(position: Int) = if(position == 0) Fragment0() else Fragment1()
Проблема с этим подходом заключается в том, что он не расширяемый, если у вас появляются новые элементы на адаптере.Также, если передана неверная позиция, вместо сбоя она вернет экземпляр Fragment1 ().В зависимости от ваших потребностей может быть хорошим вариантом или нет.