java.util.Iterator.hasNext()方法的使用及代码示例

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

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

Iterator.hasNext介绍

[英]Returns true if there is at least one more element, false otherwise.
[中]

代码示例

代码示例来源:origin: stackoverflow.com

  1. public static void printMap(Map mp) {
  2. Iterator it = mp.entrySet().iterator();
  3. while (it.hasNext()) {
  4. Map.Entry pair = (Map.Entry)it.next();
  5. System.out.println(pair.getKey() + " = " + pair.getValue());
  6. it.remove(); // avoids a ConcurrentModificationException
  7. }
  8. }

代码示例来源:origin: stackoverflow.com

  1. List<String> list = new ArrayList<>();
  2. // This is a clever way to create the iterator and call iterator.hasNext() like
  3. // you would do in a while-loop. It would be the same as doing:
  4. // Iterator<String> iterator = list.iterator();
  5. // while (iterator.hasNext()) {
  6. for (Iterator<String> iterator = list.iterator(); iterator.hasNext();) {
  7. String string = iterator.next();
  8. if (string.isEmpty()) {
  9. // Remove the current element from the iterator and the list.
  10. iterator.remove();
  11. }
  12. }

代码示例来源:origin: iluwatar/java-design-patterns

  1. private void processPendingCommands() {
  2. Iterator<Runnable> iterator = pendingCommands.iterator();
  3. while (iterator.hasNext()) {
  4. Runnable command = iterator.next();
  5. command.run();
  6. iterator.remove();
  7. }
  8. }

代码示例来源:origin: iluwatar/java-design-patterns

  1. /**
  2. * Collects the remaining objects of the given iterator into a List.
  3. *
  4. * @return a new List with the remaining objects.
  5. */
  6. public static <E> List<E> toList(Iterator<E> iterator) {
  7. List<E> copy = new ArrayList<>();
  8. while (iterator.hasNext()) {
  9. copy.add(iterator.next());
  10. }
  11. return copy;
  12. }
  13. }

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

  1. public void testAdvance_pastEnd() {
  2. List<String> list = newArrayList();
  3. list.add("a");
  4. list.add("b");
  5. Iterator<String> iterator = list.iterator();
  6. advance(iterator, 5);
  7. assertFalse(iterator.hasNext());
  8. }

代码示例来源:origin: stackoverflow.com

  1. Map map = new HashMap();
  2. Iterator entries = map.entrySet().iterator();
  3. while (entries.hasNext()) {
  4. Map.Entry entry = (Map.Entry) entries.next();
  5. Integer key = (Integer)entry.getKey();
  6. Integer value = (Integer)entry.getValue();
  7. System.out.println("Key = " + key + ", Value = " + value);
  8. }

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

  1. public void testIteratorNoSuchElementException() {
  2. Iterator<E> iterator = collection.iterator();
  3. while (iterator.hasNext()) {
  4. iterator.next();
  5. }
  6. try {
  7. iterator.next();
  8. fail("iterator.next() should throw NoSuchElementException");
  9. } catch (NoSuchElementException expected) {
  10. }
  11. }
  12. }

代码示例来源:origin: spring-projects/spring-framework

  1. @Override
  2. public String getPath() {
  3. StringBuilder pathBuilder = new StringBuilder();
  4. pathBuilder.append(PATH_DELIMITER);
  5. for (Iterator<String> iterator = this.pathSegments.iterator(); iterator.hasNext(); ) {
  6. String pathSegment = iterator.next();
  7. pathBuilder.append(pathSegment);
  8. if (iterator.hasNext()) {
  9. pathBuilder.append(PATH_DELIMITER);
  10. }
  11. }
  12. return pathBuilder.toString();
  13. }

代码示例来源:origin: apache/kafka

  1. public void clean() {
  2. // the lock protects removal from a concurrent put which could otherwise mutate the
  3. // queue after it has been removed from the map
  4. synchronized (unsent) {
  5. Iterator<ConcurrentLinkedQueue<ClientRequest>> iterator = unsent.values().iterator();
  6. while (iterator.hasNext()) {
  7. ConcurrentLinkedQueue<ClientRequest> requests = iterator.next();
  8. if (requests.isEmpty())
  9. iterator.remove();
  10. }
  11. }
  12. }

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

  1. public synchronized void finishSplits(int splits)
  2. {
  3. List<Map.Entry<PlanNodeId, Split>> toRemove = new ArrayList<>();
  4. Iterator<Map.Entry<PlanNodeId, Split>> iterator = this.splits.entries().iterator();
  5. while (toRemove.size() < splits && iterator.hasNext()) {
  6. toRemove.add(iterator.next());
  7. }
  8. for (Map.Entry<PlanNodeId, Split> entry : toRemove) {
  9. this.splits.remove(entry.getKey(), entry.getValue());
  10. }
  11. updateSplitQueueSpace();
  12. }

代码示例来源:origin: iluwatar/java-design-patterns

  1. /**
  2. * @return the count of remaining objects of the current Iterable
  3. */
  4. public final int getRemainingElementsCount() {
  5. int counter = 0;
  6. Iterator<E> iterator = iterator();
  7. while (iterator.hasNext()) {
  8. iterator.next();
  9. counter++;
  10. }
  11. return counter;
  12. }

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

  1. public void testIteratorMinExhaustsIterator() {
  2. List<Integer> ints = Lists.newArrayList(9, 0, 3, 5);
  3. Iterator<Integer> iterator = ints.iterator();
  4. assertEquals(0, (int) numberOrdering.min(iterator));
  5. assertFalse(iterator.hasNext());
  6. }

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

  1. private static void assertEmpty(Set<? extends List<?>> set) {
  2. assertTrue(set.isEmpty());
  3. assertEquals(0, set.size());
  4. assertFalse(set.iterator().hasNext());
  5. }

代码示例来源:origin: skylot/jadx

  1. public static void remove(List<InsnNode> list, InsnNode insn) {
  2. for (Iterator<InsnNode> iterator = list.iterator(); iterator.hasNext(); ) {
  3. InsnNode next = iterator.next();
  4. if (next == insn) {
  5. iterator.remove();
  6. return;
  7. }
  8. }
  9. }

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

  1. /**
  2. * Splits {@code sequence} into string components and returns them as an immutable list. If you
  3. * want an {@link Iterable} which may be lazily evaluated, use {@link #split(CharSequence)}.
  4. *
  5. * @param sequence the sequence of characters to split
  6. * @return an immutable list of the segments split from the parameter
  7. * @since 15.0
  8. */
  9. @Beta
  10. public List<String> splitToList(CharSequence sequence) {
  11. checkNotNull(sequence);
  12. Iterator<String> iterator = splittingIterator(sequence);
  13. List<String> result = new ArrayList<>();
  14. while (iterator.hasNext()) {
  15. result.add(iterator.next());
  16. }
  17. return Collections.unmodifiableList(result);
  18. }

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

  1. @Override
  2. public boolean remove(Object o) {
  3. Iterator<Entry<K, V>> entryItr = unfiltered.entrySet().iterator();
  4. while (entryItr.hasNext()) {
  5. Entry<K, V> entry = entryItr.next();
  6. if (predicate.apply(entry) && Objects.equal(entry.getValue(), o)) {
  7. entryItr.remove();
  8. return true;
  9. }
  10. }
  11. return false;
  12. }

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

  1. public void testGet_basic() {
  2. List<String> list = newArrayList();
  3. list.add("a");
  4. list.add("b");
  5. Iterator<String> iterator = list.iterator();
  6. assertEquals("b", get(iterator, 1));
  7. assertFalse(iterator.hasNext());
  8. }

代码示例来源:origin: stackoverflow.com

  1. Map<Integer, Integer> map = new HashMap<Integer, Integer>();
  2. Iterator<Map.Entry<Integer, Integer>> entries = map.entrySet().iterator();
  3. while (entries.hasNext()) {
  4. Map.Entry<Integer, Integer> entry = entries.next();
  5. System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());
  6. }

代码示例来源:origin: spring-projects/spring-framework

  1. /**
  2. * Return a string representation of the given list of {@code HttpRange} objects.
  3. * <p>This method can be used to for an {@code Range} header.
  4. * @param ranges the ranges to create a string of
  5. * @return the string representation
  6. */
  7. public static String toString(Collection<HttpRange> ranges) {
  8. Assert.notEmpty(ranges, "Ranges Collection must not be empty");
  9. StringBuilder builder = new StringBuilder(BYTE_RANGE_PREFIX);
  10. for (Iterator<HttpRange> iterator = ranges.iterator(); iterator.hasNext(); ) {
  11. HttpRange range = iterator.next();
  12. builder.append(range);
  13. if (iterator.hasNext()) {
  14. builder.append(", ");
  15. }
  16. }
  17. return builder.toString();
  18. }

代码示例来源:origin: apache/incubator-dubbo

  1. public static <T> void printList(List<T> list) {
  2. Log.info("PrintList:");
  3. Iterator<T> it = list.iterator();
  4. while (it.hasNext()) {
  5. Log.info(it.next().toString());
  6. }
  7. }
  8. }

相关文章