Java tutorial
//package com.java2s; /******************************************************************************* * Copyright (c) 2007 DSource.org and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Bruno Medeiros - initial implementation *******************************************************************************/ import java.util.Iterator; import java.util.function.Predicate; public class Main { /** * @return the index in the iteration order of the first element that matches given predicate, or -1 otherwise. */ public static <T> int indexUntil(Iterator<? extends T> iterator, Predicate<T> predicate) { int ix = 0; while (iterator.hasNext()) { T element = iterator.next(); if (predicate.test(element)) { return ix; } ix++; } return -1; } }