java.util.Collection.spliterator()方法的使用及代码示例

x33g5p2x  于2022-01-16 转载在 其他  
字(6.4k)|赞(0)|评价(0)|浏览(213)

本文整理了Java中java.util.Collection.spliterator()方法的一些代码示例,展示了Collection.spliterator()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Collection.spliterator()方法的具体详情如下:
包路径:java.util.Collection
类名称:Collection
方法名:spliterator

Collection.spliterator介绍

暂无

代码示例

代码示例来源:origin: google/guava

  1. @Override
  2. public Spliterator<E> spliterator() {
  3. synchronized (mutex) {
  4. return delegate().spliterator();
  5. }
  6. }

代码示例来源:origin: google/guava

  1. @Override
  2. public Spliterator<K> spliterator() {
  3. return CollectSpliterators.map(multimap.entries().spliterator(), Map.Entry::getKey);
  4. }

代码示例来源:origin: google/guava

  1. @Override
  2. public Spliterator<E> spliterator() {
  3. return CollectSpliterators.filter(unfiltered.spliterator(), predicate);
  4. }

代码示例来源:origin: google/guava

  1. @Override
  2. public Spliterator<T> spliterator() {
  3. return CollectSpliterators.map(fromCollection.spliterator(), function);
  4. }

代码示例来源:origin: prestodb/presto

  1. @Override
  2. public Spliterator<E> spliterator() {
  3. synchronized (mutex) {
  4. return delegate().spliterator();
  5. }
  6. }

代码示例来源:origin: prestodb/presto

  1. @Override
  2. public Spliterator<E> spliterator() {
  3. return CollectSpliterators.filter(unfiltered.spliterator(), predicate);
  4. }

代码示例来源:origin: prestodb/presto

  1. @Override
  2. public Spliterator<T> spliterator() {
  3. return CollectSpliterators.map(fromCollection.spliterator(), function);
  4. }

代码示例来源:origin: google/guava

  1. @Override
  2. Spliterator<V> valueSpliterator() {
  3. return CollectSpliterators.flatMap(
  4. map.values().spliterator(), Collection::spliterator, Spliterator.SIZED, size());
  5. }

代码示例来源:origin: google/guava

  1. @Override
  2. Spliterator<Entry<K, V>> entrySpliterator() {
  3. return CollectSpliterators.flatMap(
  4. map.entrySet().spliterator(),
  5. keyToValueCollectionEntry -> {
  6. K key = keyToValueCollectionEntry.getKey();
  7. Collection<V> valueCollection = keyToValueCollectionEntry.getValue();
  8. return CollectSpliterators.map(
  9. valueCollection.spliterator(), (V value) -> Maps.immutableEntry(key, value));
  10. },
  11. Spliterator.SIZED,
  12. size());
  13. }

代码示例来源:origin: google/guava

  1. @Override
  2. Spliterator<Entry<K, V>> entrySpliterator() {
  3. return CollectSpliterators.flatMap(
  4. asMap().entrySet().spliterator(),
  5. keyToValueCollectionEntry -> {
  6. K key = keyToValueCollectionEntry.getKey();
  7. Collection<V> valueCollection = keyToValueCollectionEntry.getValue();
  8. return CollectSpliterators.map(
  9. valueCollection.spliterator(), (V value) -> Maps.immutableEntry(key, value));
  10. },
  11. Spliterator.SIZED | (this instanceof SetMultimap ? Spliterator.DISTINCT : 0),
  12. size());
  13. }

代码示例来源:origin: prestodb/presto

  1. @Override
  2. Spliterator<V> valueSpliterator() {
  3. return CollectSpliterators.flatMap(
  4. map.values().spliterator(), Collection::spliterator, Spliterator.SIZED, size());
  5. }

代码示例来源:origin: google/guava

  1. @CollectionFeature.Require(SUPPORTS_ADD)
  2. public void testSpliteratorNotImmutable_CollectionAllowsAdd() {
  3. // If add is supported, verify that IMMUTABLE is not reported.
  4. synchronized (collection) { // for Collections.synchronized
  5. assertFalse(collection.spliterator().hasCharacteristics(Spliterator.IMMUTABLE));
  6. }
  7. }

代码示例来源:origin: prestodb/presto

  1. @Override
  2. public Spliterator<K> spliterator() {
  3. return CollectSpliterators.map(multimap.entries().spliterator(), Map.Entry::getKey);
  4. }

代码示例来源:origin: google/guava

  1. @CollectionFeature.Require(SUPPORTS_REMOVE)
  2. public void testSpliteratorNotImmutable_CollectionAllowsRemove() {
  3. // If remove is supported, verify that IMMUTABLE is not reported.
  4. synchronized (collection) { // for Collections.synchronized
  5. assertFalse(collection.spliterator().hasCharacteristics(Spliterator.IMMUTABLE));
  6. }
  7. }

代码示例来源:origin: prestodb/presto

  1. @Override
  2. Spliterator<Entry<K, V>> entrySpliterator() {
  3. return CollectSpliterators.flatMap(
  4. map.entrySet().spliterator(),
  5. keyToValueCollectionEntry -> {
  6. K key = keyToValueCollectionEntry.getKey();
  7. Collection<V> valueCollection = keyToValueCollectionEntry.getValue();
  8. return CollectSpliterators.map(
  9. valueCollection.spliterator(), (V value) -> Maps.immutableEntry(key, value));
  10. },
  11. Spliterator.SIZED,
  12. size());
  13. }

代码示例来源:origin: google/guava

  1. public void testEntriesSpliterator() {
  2. List<Entry<String, Integer>> expectedEntries =
  3. asList(
  4. Maps.immutableEntry("foo", 2),
  5. Maps.immutableEntry("foo", 3),
  6. Maps.immutableEntry("bar", 4),
  7. Maps.immutableEntry("bar", 5),
  8. Maps.immutableEntry("foo", 6));
  9. Multimap<String, Integer> multimap = LinkedHashMultimap.create();
  10. for (Entry<String, Integer> entry : expectedEntries) {
  11. multimap.put(entry.getKey(), entry.getValue());
  12. }
  13. List<Entry<String, Integer>> actualEntries = new ArrayList<>();
  14. multimap.entries().spliterator().forEachRemaining(actualEntries::add);
  15. assertThat(actualEntries).containsExactlyElementsIn(expectedEntries).inOrder();
  16. }

代码示例来源:origin: google/guava

  1. public void testValuesSpliterator() {
  2. List<Entry<String, Integer>> expectedEntries =
  3. asList(
  4. Maps.immutableEntry("foo", 2),
  5. Maps.immutableEntry("foo", 3),
  6. Maps.immutableEntry("bar", 4),
  7. Maps.immutableEntry("bar", 5),
  8. Maps.immutableEntry("foo", 6));
  9. Multimap<String, Integer> multimap = LinkedHashMultimap.create();
  10. for (Entry<String, Integer> entry : expectedEntries) {
  11. multimap.put(entry.getKey(), entry.getValue());
  12. }
  13. List<Integer> actualValues = new ArrayList<>();
  14. multimap.values().spliterator().forEachRemaining(actualValues::add);
  15. assertThat(actualValues)
  16. .containsExactlyElementsIn(Lists.transform(expectedEntries, Entry::getValue))
  17. .inOrder();
  18. }
  19. }

代码示例来源:origin: google/guava

  1. @CollectionFeature.Require(ALLOWS_NULL_VALUES)
  2. @CollectionSize.Require(absent = ZERO)
  3. public void testSpliteratorNullable() {
  4. initCollectionWithNullElement();
  5. synchronized (collection) { // for Collections.synchronized
  6. assertFalse(collection.spliterator().hasCharacteristics(Spliterator.NONNULL));
  7. }
  8. }

代码示例来源:origin: prestodb/presto

  1. @Override
  2. Spliterator<Entry<K, V>> entrySpliterator() {
  3. return CollectSpliterators.flatMap(
  4. asMap().entrySet().spliterator(),
  5. keyToValueCollectionEntry -> {
  6. K key = keyToValueCollectionEntry.getKey();
  7. Collection<V> valueCollection = keyToValueCollectionEntry.getValue();
  8. return CollectSpliterators.map(
  9. valueCollection.spliterator(), (V value) -> Maps.immutableEntry(key, value));
  10. },
  11. Spliterator.SIZED | (this instanceof SetMultimap ? Spliterator.DISTINCT : 0),
  12. size());
  13. }

代码示例来源:origin: ben-manes/caffeine

  1. @CacheSpec
  2. @CheckNoWriter @CheckNoStats
  3. @Test(dataProvider = "caches")
  4. public void valueSpliterator_tryAdvance(Map<Integer, Integer> map, CacheContext context) {
  5. Spliterator<Integer> spliterator = map.values().spliterator();
  6. int[] count = new int[1];
  7. boolean advanced;
  8. do {
  9. advanced = spliterator.tryAdvance(value -> count[0]++);
  10. } while (advanced);
  11. assertThat(count[0], is(map.size()));
  12. }

相关文章