< prev index next >

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

Print this page
rev 48215 : 8060192: Add default method <A> A[] Collection.toArray(IntFunction<A[]> generator)
Reviewed-by: martin, forax, psandoz

*** 30,39 **** --- 30,40 ---- import java.lang.reflect.Array; import java.util.function.BiConsumer; import java.util.function.BiFunction; import java.util.function.Consumer; import java.util.function.Function; + import java.util.function.IntFunction; import java.util.function.Predicate; import java.util.function.UnaryOperator; import java.util.stream.IntStream; import java.util.stream.Stream; import java.util.stream.StreamSupport;
*** 1030,1039 **** --- 1031,1041 ---- public int size() {return c.size();} public boolean isEmpty() {return c.isEmpty();} public boolean contains(Object o) {return c.contains(o);} public Object[] toArray() {return c.toArray();} public <T> T[] toArray(T[] a) {return c.toArray(a);} + public <T> T[] toArray(IntFunction<T[]> f) {return c.toArray(f);} public String toString() {return c.toString();} public Iterator<E> iterator() { return new Iterator<E>() { private final Iterator<? extends E> i = c.iterator();
*** 2017,2026 **** --- 2019,2031 ---- synchronized (mutex) {return c.toArray();} } public <T> T[] toArray(T[] a) { synchronized (mutex) {return c.toArray(a);} } + public <T> T[] toArray(IntFunction<T[]> f) { + synchronized (mutex) {return c.toArray(f);} + } public Iterator<E> iterator() { return c.iterator(); // Must be manually synched by user! }
*** 3051,3060 **** --- 3056,3066 ---- public int size() { return c.size(); } public boolean isEmpty() { return c.isEmpty(); } public boolean contains(Object o) { return c.contains(o); } public Object[] toArray() { return c.toArray(); } public <T> T[] toArray(T[] a) { return c.toArray(a); } + public <T> T[] toArray(IntFunction<T[]> f) { return c.toArray(f); } public String toString() { return c.toString(); } public boolean remove(Object o) { return c.remove(o); } public void clear() { c.clear(); } public boolean containsAll(Collection<?> coll) {
*** 5566,5579 **** public boolean contains(Object o) { return q.contains(o); } public boolean remove(Object o) { return q.remove(o); } public Iterator<E> iterator() { return q.iterator(); } public Object[] toArray() { return q.toArray(); } public <T> T[] toArray(T[] a) { return q.toArray(a); } public String toString() { return q.toString(); } ! public boolean containsAll(Collection<?> c) {return q.containsAll(c);} ! public boolean removeAll(Collection<?> c) {return q.removeAll(c);} ! public boolean retainAll(Collection<?> c) {return q.retainAll(c);} // We use inherited addAll; forwarding addAll would be wrong // Override default methods in Collection @Override public void forEach(Consumer<? super E> action) {q.forEach(action);} --- 5572,5586 ---- public boolean contains(Object o) { return q.contains(o); } public boolean remove(Object o) { return q.remove(o); } public Iterator<E> iterator() { return q.iterator(); } public Object[] toArray() { return q.toArray(); } public <T> T[] toArray(T[] a) { return q.toArray(a); } + public <T> T[] toArray(IntFunction<T[]> f) { return q.toArray(f); } public String toString() { return q.toString(); } ! public boolean containsAll(Collection<?> c) { return q.containsAll(c); } ! public boolean removeAll(Collection<?> c) { return q.removeAll(c); } ! public boolean retainAll(Collection<?> c) { return q.retainAll(c); } // We use inherited addAll; forwarding addAll would be wrong // Override default methods in Collection @Override public void forEach(Consumer<? super E> action) {q.forEach(action);}
< prev index next >