Известно, что есть класс java.util.Collections в котором есть методы вида unmodifiable* возвращающие неизменяемые коллекции. Теперь вопрос, как определить, что коллекция является неизменяемой?
Ответ
Какое-либо универсальное хорошее решение Вы вряд ли найдете.
На мой взгляд, самое некостыльное из костылей – .getClass().isInstance(...)
List
Еще варианты:
Ловить UnsupportedOperationException при добавлении элемента. Но тогда, в случае изменяемой коллекции, после теста элемент нужно удалить.
.getClass().getSimpleName().equals(...)
Комментариев нет:
Отправить комментарий