/* * Copyright (c) 2005, 2018, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA * or visit www.oracle.com if you need additional information or have any * questions.
*/
/* * @test * @bug 6267846 6275009 * @summary Test Collections.nCopies * @author Martin Buchholz
*/
privatestatic <T> List<T> referenceNCopies(int n, T o) { // A simplest correct implementation of nCopies to compare with the actual optimized implementation returnnew AbstractList<>() { publicint size() { return n; }
public T get(int index) {
Objects.checkIndex(index, n); return o;
}
};
}
privatestaticvoid checkHashCode() { int[] sizes = {0, 1, 2, 3, 5, 10, 31, 32, 100, 1000};
String[] elements = {null, "non-null"}; for (int size : sizes) { for (String element : elements) { int expectedHashCode = referenceNCopies(size, element).hashCode(); int actualHashCode = Collections.nCopies(size, element).hashCode();
check(expectedHashCode == actualHashCode, "Collections.nCopies(" + size + ", " + element + ").hashCode()");
}
}
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.