рдкрд░рд┐рдЪрдп
рдкреЛрд╕реНрдЯ рдХрд╛ рд╢реАрд░реНрд╖рдХ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ "рд╕рдордЧреНрд░" рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░реА рд░рд╛рдп рдореЗрдВ рдЬрд╛рд╡рд╛ рдФрд░ рд▓реЛрдХрдкреНрд░рд┐рдп рдЕрдорд░реВрдж рдкреБрд╕реНрддрдХрд╛рд▓рдп рджреЛрдиреЛрдВ рдореЗрдВ рдХрдИ рд╡рд╛рд╕реНрддреБ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ рдЬреЛ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЯреАрдо рдореЗрдВ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рдФрд░ рдЕрд╕рд╣рдорддрд┐ рдХрд╛ рдХрд╛рд░рдг рдмрдирддреА рд╣реИрдВред

рдЬрд╛рд╡рд╛ рдХрд▓реЗрдХреНрд╢рдВрд╕ рдлреНрд░реЗрдорд╡рд░реНрдХ рдФрд░ рдЯреНрд░рд╕реНрдЯ рдкрд░ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдпрддрд╛
рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рд╕рдВрдЧреНрд░рд╣ рдлреНрд░реЗрдорд╡рд░реНрдХ рдЗрд╕ рддрдереНрдп рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдХрд┐ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдХрдВрдЯреЗрдирд░ рд╡рд╣рд╛рдВ рджрд┐рдЦрд╛рдИ рджреЗ рд╕рдХрддреЗ рд╣реИрдВред рдЗрдВрдЯрд░рдлрд╝реЗрд╕ java.util.Collectionрддрд░реАрдХреЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИ add, clear, removeрдЖрджрд┐ : рдмрд╛рдж рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдЕрдкрдиреЗ рд╕рднреА рдкрд╕рдВрджреАрджрд╛ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ Collections.emptyList(), Collections.singletonList<T>(T t), Arrays.asList<T>(T.. values)рдФрд░ рдЕрдиреНрдпред рдпрд╣реАрдВ рд╕реЗ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИрдВред рдЖрдЗрдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рджреЗрдЦреЗрдВ:
List<Integer> list = Arrays.asList(21, 22, 23);
list.add(24)        
рдРрд╕рд╛ рдХреИрд╕реЗ? рдЖрдЦрд┐рд░рдХрд╛рд░, рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╕реЗ java.util.Listрд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рд╣реИ java.util.Collection, рдЬрд┐рд╕рдореЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рд╡рд┐рдзрд┐ рд╣реИ addред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ Arrays.asList<T>(T... t)рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╡рд┐рдзрд┐рдпрд╛рдБ addрдФрд░ removeрдПрдХ рдЕрдкрд╡рд╛рдж рдлреЗрдВрдХрддреА рд╣реИрдВред рдпрд╣рд╛рдВ рд╣рдореЗрдВ рдПрдХ рдЕрдЬреАрдм рд╕реНрдерд┐рддрд┐ рдорд┐рд▓рддреА рд╣реИ: рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ рд╡рд┐рдзрд┐ рдореМрдЬреВрдж рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рдЗрд╕реЗ рдХреЙрд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕реНрдерд┐рддрд┐ рдФрд░ рднреА рдЕрдЬрдирдмреА рд╣реЛ рдЬрд╛рддреА рд╣реИ рдЕрдЧрд░ рд╣рдо рдХрд┐рд╕реА рддрддреНрд╡ рдХреЗ рдореВрд▓реНрдп рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВред
List<Integer> list = Arrays.asList(21, 22, 23);
list.set(0, 121);
System.out.println(list);        
. . , . , , , . .
List<Integer> filtered = filter(List<Integer> list);
filter List<Integer> . ? , ? try {} catch(Exception e) {} add remove тАФ . ? ? list, filtered? . , . , тАФ . , , list.clear(), , . SOLID, L тАФ , , . , add , .
- , Stream API. , Java , , , . , , .
, java.util.Collection, java.util.Iterable, Collection. Iterable , Iterator, for-each . .
public interface Iterator<E> {
    boolean hasNext();
    E next();
    default void remove() {
        throw new UnsupportedOperationException("remove");
    }
    default void forEachRemaining(Consumer<? super E> action) {
        Objects.requireNonNull(action);
        while (hasNext())
            action.accept(next());
    }
}
remove. , for-each, , , API , , . - , , , , Java , .
Guava
Guava? тАФ ImmutableList.
ImmutableList<String> people = ImmutableList.of("Michael", "Simon", "John")
...
? ┬лImmutable┬╗. , ImmutableList java.util.List, add, clear ... , . , final. : , List Collection. , ImmutableList, , , ┬л ┬╗. Guava .
Kotlin
? , JetBrains Kotlin. , , , . :

, , , .
val list: List<Int> = listOf(1, 2, 3)
val mutableList: MutableList<Int> = list as MutableList<Int>
mutableList.clear()      
- , MutableList List MutableList, , . , Java Collections Framework, Guava: , . , , . , Java, - , , , .
? ? , : , , , . . Java Collections Framework Immutable. :

, , ┬лImmutable┬╗. , . , ImmutableQueue, , . . LinkedList , , ( , ). ImmutableLinkedList .
- , , . List ImmutableList. , toMutableList toImmutableList ImmutableList List . , , . , ArrayList ImmutableArrayList . . ArrayList , ImmutableArrayList, ImmutableArrayList ArrayList. API , .
, тАФ java.util.Iterable. , for-each , . java.util.Iterator, , remove, . , .
ImmutableIterable, ImmutableIterator. , , Java for-each Iterable, ImmutableIterable.ImmutableIterator, java.util.Iterator remove, final, . , .remove Iterator, , Java, , .
, Java JP . , тАФ , Java-. , , . !
P.S.
рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдПрдХ рдУрдкрди-рд╕реЛрд░реНрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдЬрд╛рд╡рд╛ рд╕рдВрдЧреНрд░рд╣ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИред рдЗрдЪреНрдЫреБрдХ рд▓реЛрдЧ Github рдкрд░ рд▓рд┐рдВрдХ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ ред