< prev index next >

src/java.base/share/classes/java/util/Collections.java

Print this page
rev 47476 : 8177290: add copy factory methods for unmodifiable List, Set, Map
8184690: add Collectors for collecting into unmodifiable List, Set, and Map
Reviewed-by: alanb, dholmes, rriggs, scolebourne

*** 987,999 **** // Unmodifiable Wrappers /** ! * Returns an unmodifiable view of the specified collection. This method ! * allows modules to provide users with "read-only" access to internal ! * collections. Query operations on the returned collection "read through" * to the specified collection, and attempts to modify the returned * collection, whether direct or via its iterator, result in an * {@code UnsupportedOperationException}.<p> * * The returned collection does <i>not</i> pass the hashCode and equals --- 987,998 ---- // Unmodifiable Wrappers /** ! * Returns an <a href="Collection.html#unmodview">unmodifiable view</a> of the ! * specified collection. Query operations on the returned collection "read through" * to the specified collection, and attempts to modify the returned * collection, whether direct or via its iterator, result in an * {@code UnsupportedOperationException}.<p> * * The returned collection does <i>not</i> pass the hashCode and equals
*** 1100,1112 **** return (Stream<E>)c.parallelStream(); } } /** ! * Returns an unmodifiable view of the specified set. This method allows ! * modules to provide users with "read-only" access to internal sets. ! * Query operations on the returned set "read through" to the specified * set, and attempts to modify the returned set, whether direct or via its * iterator, result in an {@code UnsupportedOperationException}.<p> * * The returned set will be serializable if the specified set * is serializable. --- 1099,1110 ---- return (Stream<E>)c.parallelStream(); } } /** ! * Returns an <a href="Collection.html#unmodview">unmodifiable view</a> of the ! * specified set. Query operations on the returned set "read through" to the specified * set, and attempts to modify the returned set, whether direct or via its * iterator, result in an {@code UnsupportedOperationException}.<p> * * The returned set will be serializable if the specified set * is serializable.
*** 1130,1142 **** public boolean equals(Object o) {return o == this || c.equals(o);} public int hashCode() {return c.hashCode();} } /** ! * Returns an unmodifiable view of the specified sorted set. This method ! * allows modules to provide users with "read-only" access to internal ! * sorted sets. Query operations on the returned sorted set "read * through" to the specified sorted set. Attempts to modify the returned * sorted set, whether direct, via its iterator, or via its * {@code subSet}, {@code headSet}, or {@code tailSet} views, result in * an {@code UnsupportedOperationException}.<p> * --- 1128,1139 ---- public boolean equals(Object o) {return o == this || c.equals(o);} public int hashCode() {return c.hashCode();} } /** ! * Returns an <a href="Collection.html#unmodview">unmodifiable view</a> of the ! * specified sorted set. Query operations on the returned sorted set "read * through" to the specified sorted set. Attempts to modify the returned * sorted set, whether direct, via its iterator, or via its * {@code subSet}, {@code headSet}, or {@code tailSet} views, result in * an {@code UnsupportedOperationException}.<p> *
*** 1178,1190 **** public E first() {return ss.first();} public E last() {return ss.last();} } /** ! * Returns an unmodifiable view of the specified navigable set. This method ! * allows modules to provide users with "read-only" access to internal ! * navigable sets. Query operations on the returned navigable set "read * through" to the specified navigable set. Attempts to modify the returned * navigable set, whether direct, via its iterator, or via its * {@code subSet}, {@code headSet}, or {@code tailSet} views, result in * an {@code UnsupportedOperationException}.<p> * --- 1175,1186 ---- public E first() {return ss.first();} public E last() {return ss.last();} } /** ! * Returns an <a href="Collection.html#unmodview">unmodifiable view</a> of the ! * specified navigable set. Query operations on the returned navigable set "read * through" to the specified navigable set. Attempts to modify the returned * navigable set, whether direct, via its iterator, or via its * {@code subSet}, {@code headSet}, or {@code tailSet} views, result in * an {@code UnsupportedOperationException}.<p> *
*** 1267,1279 **** ns.tailSet(fromElement, inclusive)); } } /** ! * Returns an unmodifiable view of the specified list. This method allows ! * modules to provide users with "read-only" access to internal ! * lists. Query operations on the returned list "read through" to the * specified list, and attempts to modify the returned list, whether * direct or via its iterator, result in an * {@code UnsupportedOperationException}.<p> * * The returned list will be serializable if the specified list --- 1263,1274 ---- ns.tailSet(fromElement, inclusive)); } } /** ! * Returns an <a href="Collection.html#unmodview">unmodifiable view</a> of the ! * specified list. Query operations on the returned list "read through" to the * specified list, and attempts to modify the returned list, whether * direct or via its iterator, result in an * {@code UnsupportedOperationException}.<p> * * The returned list will be serializable if the specified list
*** 1413,1425 **** return new UnmodifiableList<>(list); } } /** ! * Returns an unmodifiable view of the specified map. This method ! * allows modules to provide users with "read-only" access to internal ! * maps. Query operations on the returned map "read through" * to the specified map, and attempts to modify the returned * map, whether direct or via its collection views, result in an * {@code UnsupportedOperationException}.<p> * * The returned map will be serializable if the specified map --- 1408,1419 ---- return new UnmodifiableList<>(list); } } /** ! * Returns an <a href="Collection.html#unmodview">unmodifiable view</a> of the ! * specified map. Query operations on the returned map "read through" * to the specified map, and attempts to modify the returned * map, whether direct or via its collection views, result in an * {@code UnsupportedOperationException}.<p> * * The returned map will be serializable if the specified map
*** 1763,1775 **** } } } /** ! * Returns an unmodifiable view of the specified sorted map. This method ! * allows modules to provide users with "read-only" access to internal ! * sorted maps. Query operations on the returned sorted map "read through" * to the specified sorted map. Attempts to modify the returned * sorted map, whether direct, via its collection views, or via its * {@code subMap}, {@code headMap}, or {@code tailMap} views, result in * an {@code UnsupportedOperationException}.<p> * --- 1757,1768 ---- } } } /** ! * Returns an <a href="Collection.html#unmodview">unmodifiable view</a> of the ! * specified sorted map. Query operations on the returned sorted map "read through" * to the specified sorted map. Attempts to modify the returned * sorted map, whether direct, via its collection views, or via its * {@code subMap}, {@code headMap}, or {@code tailMap} views, result in * an {@code UnsupportedOperationException}.<p> *
*** 1807,1819 **** public K firstKey() { return sm.firstKey(); } public K lastKey() { return sm.lastKey(); } } /** ! * Returns an unmodifiable view of the specified navigable map. This method ! * allows modules to provide users with "read-only" access to internal ! * navigable maps. Query operations on the returned navigable map "read * through" to the specified navigable map. Attempts to modify the returned * navigable map, whether direct, via its collection views, or via its * {@code subMap}, {@code headMap}, or {@code tailMap} views, result in * an {@code UnsupportedOperationException}.<p> * --- 1800,1811 ---- public K firstKey() { return sm.firstKey(); } public K lastKey() { return sm.lastKey(); } } /** ! * Returns an <a href="Collection.html#unmodview">unmodifiable view</a> of the ! * specified navigable map. Query operations on the returned navigable map "read * through" to the specified navigable map. Attempts to modify the returned * navigable map, whether direct, via its collection views, or via its * {@code subMap}, {@code headMap}, or {@code tailMap} views, result in * an {@code UnsupportedOperationException}.<p> *
< prev index next >