--- jsr166/src/test/jtreg/util/PriorityQueue/PriorityQueueSort.java 2003/09/01 04:28:03 1.2 +++ jsr166/src/test/jtreg/util/PriorityQueue/PriorityQueueSort.java 2018/01/08 03:12:03 1.13 @@ -1,20 +1,29 @@ /* - * @test %I% %E% + * Written by Doug Lea with assistance from members of JCP JSR-166 + * Expert Group and released to the public domain, as explained at + * http://creativecommons.org/publicdomain/zero/1.0/ + */ + +/* + * @test * @bug 4486658 * @summary Checks that a priority queue returns elements in sorted order across various operations - * - * @compile -source 1.5 PriorityQueueSort.java - * @run main PriorityQueueSort */ -import java.util.*; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; +import java.util.Iterator; +import java.util.List; +import java.util.PriorityQueue; +import java.util.Queue; public class PriorityQueueSort { - static class MyComparator implements Comparator { + static class MyComparator implements Comparator { public int compare(Integer x, Integer y) { - int i = ((Integer)x).intValue(); - int j = ((Integer)y).intValue(); + int i = x.intValue(); + int j = y.intValue(); if (i < j) return -1; if (i > j) return 1; return 0; @@ -25,32 +34,32 @@ public class PriorityQueueSort { int n = 10000; if (args.length > 0) n = Integer.parseInt(args[0]); - - List sorted = new ArrayList(n); + + List sorted = new ArrayList<>(n); for (int i = 0; i < n; i++) sorted.add(new Integer(i)); - List shuffled = new ArrayList(sorted); + List shuffled = new ArrayList<>(sorted); Collections.shuffle(shuffled); - Queue pq = new PriorityQueue(n, new MyComparator()); + Queue pq = new PriorityQueue<>(n, new MyComparator()); for (Iterator i = shuffled.iterator(); i.hasNext(); ) pq.add(i.next()); - List recons = new ArrayList(); + List recons = new ArrayList<>(); while (!pq.isEmpty()) recons.add(pq.remove()); if (!recons.equals(sorted)) throw new RuntimeException("Sort test failed"); recons.clear(); - pq = new PriorityQueue(shuffled); + pq = new PriorityQueue<>(shuffled); while (!pq.isEmpty()) recons.add(pq.remove()); if (!recons.equals(sorted)) throw new RuntimeException("Sort test failed"); // Remove all odd elements from queue - pq = new PriorityQueue(shuffled); + pq = new PriorityQueue<>(shuffled); for (Iterator i = pq.iterator(); i.hasNext(); ) if ((i.next().intValue() & 1) == 1) i.remove(); @@ -66,4 +75,3 @@ public class PriorityQueueSort { throw new RuntimeException("Iterator remove test failed."); } } -