package com.levelup.java.collections; import static org.junit.Assert.assertEquals; import java.util.ArrayList; import java.util.List; import java.util.Optional; import org.apache.commons.collections.CollectionUtils; import org.junit.Test; import com.google.common.collect.Iterables; import com.google.common.collect.Lists; /** * This java example will demonstrate getting the first element * in list with straight up java, java 8, google guava and apache commons. * * @author Justin Musgrove * @see <a href='http://www.leveluplunch.com/java/examples/get-first-element-in-list/'>First element in list</a> * */ public class GetFirstElementInList { @Test public void get_first_element_in_list_with_java () { List<String> strings = new ArrayList<String>(); strings.add("one"); strings.add("two"); strings.add("three"); String firstElement = null; if (!strings.isEmpty() && strings.size() > 0) { firstElement = strings.get(0); } assertEquals("one", firstElement); } @Test public void get_first_element_in_list_with_java8 () { List<String> strings = new ArrayList<String>(); strings.add("one"); strings.add("two"); strings.add("three"); Optional<String> firstElement = strings.stream().findFirst(); assertEquals("one", firstElement.orElse("two")); } @Test public void get_first_element_in_list_with_guava () { List<String> strings = Lists.newArrayList("one", "two", "three"); String firstElement = Iterables.getFirst(strings, null); assertEquals("one", firstElement); } @Test public void get_first_element_in_list_with_apachecommons () { List<String> strings = Lists.newArrayList("one", "two", "three"); String firstElement = (String) CollectionUtils.get(strings, 0); assertEquals("one", firstElement); } }