Java 类java.util.NavigableSet 实例源码

项目:openjdk-jdk10    文件:EmptyNavigableSet.java   
@Test(dataProvider = "NavigableSet<?>", dataProviderClass = EmptyNavigableSet.class)
public void testheadSetRanges(String description, NavigableSet navigableSet) {
    NavigableSet subSet = navigableSet.headSet(BigInteger.ONE, true);

    // same subset
    subSet.headSet(BigInteger.ONE, true);

    // slightly smaller
    NavigableSet ns = subSet.headSet(BigInteger.ONE, false);

    // slight expansion
    assertThrowsIAE(() -> {
        ns.headSet(BigInteger.ONE, true);
    },
        description + ": Expansion should not be allowed");

    // much smaller
    subSet.headSet(isDescending(subSet) ? BigInteger.TEN : BigInteger.ZERO, true);
}
项目:openjdk-jdk10    文件:TreeMapTest.java   
/**
 * descending iterator of descendingKeySet is ordered
 */
public void testDescendingKeySetDescendingIteratorOrder() {
    TreeMap map = map5();
    NavigableSet s = map.descendingKeySet();
    Iterator i = s.descendingIterator();
    Integer last = (Integer)i.next();
    assertEquals(last, one);
    int count = 1;
    while (i.hasNext()) {
        Integer k = (Integer)i.next();
        assertTrue(last.compareTo(k) < 0);
        last = k;
        ++count;
    }
    assertEquals(5, count);
}
项目:guava-mock    文件:FilteredCollectionsTest.java   
public void testNavigableSubSet() {
  for (List<Integer> contents : SAMPLE_INPUTS) {
    for (int i = 0; i < 10; i++) {
      for (int j = i + 1; j < 10; j++) {
        for (boolean fromInclusive : ImmutableList.of(true, false)) {
          for (boolean toInclusive : ImmutableList.of(true, false)) {
            NavigableSet<Integer> filterSubset = filter(
                createUnfiltered(contents).subSet(i, fromInclusive, j, toInclusive), EVEN);
            NavigableSet<Integer> subsetFilter = filter(createUnfiltered(contents), EVEN)
                .subSet(i, fromInclusive, j, toInclusive);
            assertEquals(filterSubset, subsetFilter);
          }
        }
      }
    }
  }
}
项目:openjdk-jdk10    文件:ConcurrentSkipListSubSetTest.java   
/**
 * iterator.remove removes current element
 */
public void testIteratorRemove() {
    final NavigableSet q = set0();
    q.add(new Integer(2));
    q.add(new Integer(1));
    q.add(new Integer(3));

    Iterator it = q.iterator();
    it.next();
    it.remove();

    it = q.iterator();
    assertEquals(it.next(), new Integer(2));
    assertEquals(it.next(), new Integer(3));
    assertFalse(it.hasNext());
}
项目:openjdk-jdk10    文件:ConcurrentSkipListSubSetTest.java   
/**
 * iterator iterates through all elements
 */
public void testDescendingIterator() {
    NavigableSet q = populatedSet(SIZE);
    int i = 0;
    Iterator it = q.iterator();
    while (it.hasNext()) {
        assertTrue(q.contains(it.next()));
        ++i;
    }
    assertEquals(i, SIZE);
}
项目:ditb    文件:Scan.java   
/**
 * Get the column from the specified family with the specified qualifier.
 * <p>
 * Overrides previous calls to addFamily for this family.
 * @param family family name
 * @param qualifier column qualifier
 * @return this
 */
public Scan addColumn(byte [] family, byte [] qualifier) {
  NavigableSet<byte []> set = familyMap.get(family);
  if(set == null) {
    set = new TreeSet<byte []>(Bytes.BYTES_COMPARATOR);
  }
  if (qualifier == null) {
    qualifier = HConstants.EMPTY_BYTE_ARRAY;
  }
  set.add(qualifier);
  familyMap.put(family, set);
  return this;
}
项目:openjdk-jdk10    文件:ConcurrentSkipListSubSetTest.java   
/**
 * containsAll(c) is true when c contains a subset of elements
 */
public void testContainsAll() {
    NavigableSet q = populatedSet(SIZE);
    NavigableSet p = set0();
    for (int i = 0; i < SIZE; ++i) {
        assertTrue(q.containsAll(p));
        assertFalse(p.containsAll(q));
        p.add(new Integer(i));
    }
    assertTrue(p.containsAll(q));
}
项目:guava-mock    文件:FilteredCollectionsTest.java   
public void testPollFirst() {
  for (List<Integer> contents : SAMPLE_INPUTS) {
    NavigableSet<Integer> filtered = filter(createUnfiltered(contents), EVEN);
    NavigableSet<Integer> unfiltered = createUnfiltered(filtered);

    assertEquals(unfiltered.pollFirst(), filtered.pollFirst());
    assertEquals(unfiltered, filtered);
  }
}
项目:s-store    文件:ForwardingNavigableSet.java   
/**
 * A sensible definition of {@link #subSet(Object, boolean, Object, boolean)} in terms of the
 * {@code headSet} and {@code tailSet} methods. In many cases, you may wish to override
 * {@link #subSet(Object, boolean, Object, boolean)} to forward to this implementation.
 */
@Beta
protected NavigableSet<E> standardSubSet(
    E fromElement,
    boolean fromInclusive,
    E toElement,
    boolean toInclusive) {
  return tailSet(fromElement, fromInclusive).headSet(toElement, toInclusive);
}
项目:Java-9-Cookbook    文件:Chapter07Concurrency02.java   
private static void demoNavigableSetRemove(NavigableSet<Integer> set) {
    System.out.println("set: " + set);
    try {
        for (int i : set) {
            System.out.println(i);
            System.out.println("Calling set.remove(2)...");
            set.remove(2);
        }
    } catch (Exception ex) {
        System.out.println(ex.getClass().getName());
    }
    System.out.println("set: " + set);
}
项目:hekate    文件:DefaultFailureDetector.java   
private void removeMonitors(long limit) {
    Consumer<ClusterAddress> doRemove = node -> {
        if (DEBUG) {
            log.debug("Stopped monitoring [node={}]", node);
        }

        monitors.remove(node);
    };

    NavigableSet<ClusterAddress> allSorted = new TreeSet<>(allNodes);

    // Nodes that are before the local node in the ring.
    List<ClusterAddress> toRemove = allSorted.headSet(localNode, false).stream()
        .filter(monitors::containsKey)
        .limit(limit)
        .collect(toList());

    toRemove.forEach(doRemove);

    long removeMore = limit - toRemove.size();

    if (removeMore > 0) {
        allSorted.tailSet(localNode, false).stream()
            .filter(monitors::containsKey)
            .limit(limit)
            .forEach(doRemove);
    }
}
项目:microbean-helm    文件:TestStreamOrientedChartLoader.java   
@Test
public void testToSubchartsDeep() throws IOException {
  final String input = "wordpress/charts/mariadb/charts/frobnicator/templates/foo.yaml";
  final NavigableSet<String> output = StreamOrientedChartLoader.toSubcharts(input);
  assertNotNull(output);
  assertEquals(2, output.size());
  assertEquals("wordpress/charts/mariadb", output.first());
  assertEquals("wordpress/charts/mariadb/charts/frobnicator", output.last());

}
项目:guava-mock    文件:SynchronizedNavigableSetTest.java   
@SuppressWarnings("unchecked")
protected <E> NavigableSet<E> create() {
  TestSet<E> inner =
      new TestSet<E>(new TreeSet<E>((Comparator<E>) Ordering.natural().nullsFirst()), null);
  NavigableSet<E> outer = Synchronized.navigableSet(inner, null);
  inner.mutex = outer;
  return outer;
}
项目:sstore-soft    文件:Sets.java   
@Override
public NavigableSet<E> subSet(
    E fromElement,
    boolean fromInclusive,
    E toElement,
    boolean toInclusive) {
  return unmodifiableNavigableSet(delegate.subSet(
      fromElement,
      fromInclusive,
      toElement,
      toInclusive));
}
项目:ditb    文件:DefaultMemStore.java   
private Cell getNextRow(final Cell key,
    final NavigableSet<Cell> set) {
  Cell result = null;
  SortedSet<Cell> tail = key == null? set: set.tailSet(key);
  // Iterate until we fall into the next row; i.e. move off current row
  for (Cell cell: tail) {
    if (comparator.compareRows(cell, key) <= 0)
      continue;
    // Note: Not suppressing deletes or expired cells.  Needs to be handled
    // by higher up functions.
    result = cell;
    break;
  }
  return result;
}
项目:openjdk-jdk10    文件:TreeSubSetTest.java   
/**
 * Add of non-Comparable throws CCE
 */
public void testDescendingAddNonComparable() {
    NavigableSet q = dset0();
    try {
        q.add(new Object());
        q.add(new Object());
        shouldThrow();
    } catch (ClassCastException success) {}
}
项目:openjdk-jdk10    文件:ConcurrentSkipListSubSetTest.java   
/**
 * Returns a new set of first 5 negative ints.
 */
private static NavigableSet dset5() {
    ConcurrentSkipListSet q = new ConcurrentSkipListSet();
    assertTrue(q.isEmpty());
    q.add(m1);
    q.add(m2);
    q.add(m3);
    q.add(m4);
    q.add(m5);
    NavigableSet s = q.descendingSet();
    assertEquals(5, s.size());
    return s;
}
项目:openjdk-jdk10    文件:TreeSubSetTest.java   
/**
 * toString contains toStrings of elements
 */
public void testDescendingToString() {
    NavigableSet q = populatedSet(SIZE);
    String s = q.toString();
    for (int i = 0; i < SIZE; ++i) {
        assertTrue(s.contains(String.valueOf(i)));
    }
}
项目:s-store    文件:Sets.java   
@Override
public NavigableSet<E> subSet(
    E fromElement,
    boolean fromInclusive,
    E toElement,
    boolean toInclusive) {
  return forward.subSet(toElement, toInclusive, fromElement, fromInclusive).descendingSet();
}
项目:Exoplayer2Radio    文件:SimpleCache.java   
@Override
public synchronized NavigableSet<CacheSpan> addListener(String key, Listener listener) {
  ArrayList<Listener> listenersForKey = listeners.get(key);
  if (listenersForKey == null) {
    listenersForKey = new ArrayList<>();
    listeners.put(key, listenersForKey);
  }
  listenersForKey.add(listener);
  return getCachedSpans(key);
}
项目:openjdk-jdk10    文件:TreeSubSetTest.java   
/**
 * ceiling returns next element
 */
public void testDescendingCeiling() {
    NavigableSet q = dset5();
    Object e1 = q.ceiling(m3);
    assertEquals(m3, e1);

    Object e2 = q.ceiling(zero);
    assertEquals(m1, e2);

    Object e3 = q.ceiling(m5);
    assertEquals(m5, e3);

    Object e4 = q.ceiling(m6);
    assertNull(e4);
}
项目:googles-monorepo-demo    文件:ForwardingNavigableSetTest.java   
private static <T> NavigableSet<T> wrap(final NavigableSet<T> delegate) {
  return new ForwardingNavigableSet<T>() {
    @Override protected NavigableSet<T> delegate() {
      return delegate;
    }
  };
}
项目:sstore-soft    文件:Synchronized.java   
@Override public NavigableSet<E> descendingSet() {
  synchronized (mutex) {
    if (descendingSet == null) {
      NavigableSet<E> dS =
          Synchronized.navigableSet(delegate().descendingSet(), mutex);
      descendingSet = dS;
      return dS;
    }
    return descendingSet;
  }
}
项目:ditb    文件:BlockCacheUtil.java   
/**
 * @param filename
 * @param blocks
 * @return A JSON String of <code>filename</code> and counts of <code>blocks</code>
 * @throws JsonGenerationException
 * @throws JsonMappingException
 * @throws IOException
 */
public static String toJSON(final String filename, final NavigableSet<CachedBlock> blocks)
throws JsonGenerationException, JsonMappingException, IOException {
  CachedBlockCountsPerFile counts = new CachedBlockCountsPerFile(filename);
  for (CachedBlock cb: blocks) {
    counts.count++;
    counts.size += cb.getSize();
    BlockType bt = cb.getBlockType();
    if (bt != null && bt.isData()) {
      counts.countData++;
      counts.sizeData += cb.getSize();
    }
  }
  return MAPPER.writeValueAsString(counts);
}
项目:openjdk-jdk10    文件:ConcurrentSkipListSubSetTest.java   
/**
 * clear removes all elements
 */
public void testClear() {
    NavigableSet q = populatedSet(SIZE);
    q.clear();
    assertTrue(q.isEmpty());
    assertEquals(0, q.size());
    q.add(new Integer(1));
    assertFalse(q.isEmpty());
    q.clear();
    assertTrue(q.isEmpty());
}
项目:openjdk-jdk10    文件:ConcurrentSkipListSubSetTest.java   
/**
 * add(null) throws NPE
 */
public void testAddNull() {
    NavigableSet q = set0();
    try {
        q.add(null);
        shouldThrow();
    } catch (NullPointerException success) {}
}
项目:ditb    文件:Scan.java   
/**
 * Compile the details beyond the scope of getFingerprint (row, columns,
 * timestamps, etc.) into a Map along with the fingerprinted information.
 * Useful for debugging, logging, and administration tools.
 * @param maxCols a limit on the number of columns output prior to truncation
 * @return Map
 */
@Override
public Map<String, Object> toMap(int maxCols) {
  // start with the fingerpring map and build on top of it
  Map<String, Object> map = getFingerprint();
  // map from families to column list replaces fingerprint's list of families
  Map<String, List<String>> familyColumns =
    new HashMap<String, List<String>>();
  map.put("families", familyColumns);
  // add scalar information first
  map.put("startRow", Bytes.toStringBinary(this.startRow));
  map.put("stopRow", Bytes.toStringBinary(this.stopRow));
  map.put("maxVersions", this.maxVersions);
  map.put("batch", this.batch);
  map.put("caching", this.caching);
  map.put("maxResultSize", this.maxResultSize);
  map.put("cacheBlocks", this.cacheBlocks);
  map.put("loadColumnFamiliesOnDemand", this.loadColumnFamiliesOnDemand);
  List<Long> timeRange = new ArrayList<Long>();
  timeRange.add(this.tr.getMin());
  timeRange.add(this.tr.getMax());
  map.put("timeRange", timeRange);
  int colCount = 0;
  // iterate through affected families and list out up to maxCols columns
  for (Map.Entry<byte [], NavigableSet<byte[]>> entry :
    this.familyMap.entrySet()) {
    List<String> columns = new ArrayList<String>();
    familyColumns.put(Bytes.toStringBinary(entry.getKey()), columns);
    if(entry.getValue() == null) {
      colCount++;
      --maxCols;
      columns.add("ALL");
    } else {
      colCount += entry.getValue().size();
      if (maxCols <= 0) {
        continue;
      }
      for (byte [] column : entry.getValue()) {
        if (--maxCols <= 0) {
          continue;
        }
        columns.add(Bytes.toStringBinary(column));
      }
    }
  }
  map.put("totalColumns", colCount);
  if (this.filter != null) {
    map.put("filter", this.filter.toString());
  }
  // add the id if set
  if (getId() != null) {
    map.put("id", getId());
  }
  return map;
}
项目:OpenJSharp    文件:ConcurrentSkipListMap.java   
public NavigableSet<K> navigableKeySet() {
    KeySet<K> ks = keySet;
    return (ks != null) ? ks : (keySet = new KeySet<K>(this));
}
项目:guava-mock    文件:Sets.java   
DescendingSet(NavigableSet<E> forward) {
  this.forward = forward;
}
项目:googles-monorepo-demo    文件:Sets.java   
@Override
public NavigableSet<E> descendingSet() {
  return forward;
}
项目:guava-mock    文件:ForwardingNavigableMapTest.java   
@Override
public NavigableSet<K> navigableKeySet() {
  return new StandardNavigableKeySet();
}
项目:HCFCore    文件:AbstractNavigableSetDecorator.java   
@Override
public NavigableSet<E> headSet(E toElement, boolean inclusive) {
    return decorated().headSet(toElement, inclusive);
}
项目:GitHub    文件:OrderAttributeValue.java   
@Value.ReverseOrder
public abstract NavigableSet<String> reverse();
项目:GitHub    文件:JdkColl.java   
@Value.ReverseOrder
NavigableSet<Integer> navs();
项目:googles-monorepo-demo    文件:SynchronizedNavigableSetTest.java   
public void testTailSet_E_B() {
  NavigableSet<String> set = create();
  NavigableSet<String> tailSet = set.tailSet("a", true);
  assertTrue(tailSet instanceof SynchronizedNavigableSet);
  assertSame(set, ((SynchronizedNavigableSet<String>) tailSet).mutex);
}
项目:guava-mock    文件:Synchronized.java   
SynchronizedNavigableSet(NavigableSet<E> delegate, @Nullable Object mutex) {
  super(delegate, mutex);
}
项目:sstore-soft    文件:ForwardingNavigableSet.java   
@Override
public NavigableSet<E> descendingSet() {
  return delegate().descendingSet();
}
项目:s-store    文件:AbstractMapBasedMultimap.java   
@Override
public NavigableSet<K> keySet() {
  return (NavigableSet<K>) super.keySet();
}
项目:guava-mock    文件:FilteredCollectionsTest.java   
@Override
NavigableSet<Integer> filter(
    NavigableSet<Integer> elements, Predicate<? super Integer> predicate) {
  return Sets.filter(elements, predicate);
}
项目:s-store    文件:Sets.java   
@Override
public NavigableSet<E> descendingSet() {
  return Sets.filter(unfiltered().descendingSet(), predicate);
}