@Test public void takeWhile() { List<Integer> numberList = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5)); Predicate<Integer> lessThenFive = x -> x < 5; Collection<Integer> result = Collections.takeWhile(lessThenFive, numberList); assertEquals(Arrays.asList(1, 2, 3, 4), result); assertEquals(emptyList(), Collections.takeWhile(IS_NULL_PREDICATE, numberList)); assertEquals(numberList, Collections.takeWhile(NOT_NULL_PREDICATE, numberList)); }