Java实现寻找列表List中最后第二个元素
如何在一个元素列表List中找到最后第二个元素?
 
      import java.util.LinkedList;
      import java.util.List;
      import java.util.NoSuchElementException;
       
      public class P02 {
       
          public static <T> T secondLast(List<T> list) {
              if (list.size() < 2) {
                  throw new NoSuchElementException("Can't find secondLast element from a list with less than 2 elements");
              }
              return list.get(list.size() - 2);
          }
       
          public static <T> T secondLastRecursion(LinkedList<T> list) {
              if (list.size() < 2) {
                  throw new NoSuchElementException("Can't find secondLast element from a list with less than 2 elements");
              }
              if (list.size() == 2) {
                  return list.getFirst();
              }
              return secondLastRecursion(new LinkedList<>(list.subList(1, list.size())));
       
          }
      }