Java tutorial
//package com.java2s; /* * Copyright 2016 Dmitry Korotych (dkorotych at gmail dot com). * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.Optional; public class Main { /** * Return the "safe" list. This method never returns a value of * {@code null}, if the input list is equal to {@code null}, then instead it * will return an empty list * * @param <T> Type of list of elements * @param list List of elements * @return The input or an empty list */ public static <T> List<T> getSafeList(final List<T> list) { return Optional.ofNullable(list).orElse(Collections.<T>emptyList()); } /** * Return the "safe" list. This method never returns a value of {@code null} * * @param <T> Type of list of elements * @param items Elements * @return The input sequence transformed to list or an empty list * @see Collections#emptyList() * @see Arrays#asList(java.lang.Object...) */ @SafeVarargs @SuppressWarnings("varargs") public static <T> List<T> getSafeList(final T... items) { if (items == null) { return Collections.<T>emptyList(); } else { return Arrays.asList(items); } } }