Большую часть времени разница вряд ли измерима, поэтому я бы оставил это простым.Однако существуют случаи, когда может быть существенная разница:
Collections.unmodifiableList(list).equals(Collections.unmodifiableList(list))
- это операция O(n)
, так как ярлык с использованием ==
не работает.Такое сравнение может понадобиться, например, когда вы используете список в качестве ключа кеша.
Несмотря на это, я бы посоветовал сохранить его простым и оптимизировать только тогда, когда приложение нуждается в нем и профилировщик показываетчто это может помочь.
Подумайте об использовании ImmutableList
в Guava, если можете.