Java List Reverse reverseList(List list, boolean shallowCopy)

Here you can find the source of reverseList(List list, boolean shallowCopy)

Description

Reverse list.

License

Apache License

Parameter

Parameter Description
T the generic type
list the list
shallowCopy the shallow copy

Return

the list

Declaration

public static <T> List<T> reverseList(List<T> list, boolean shallowCopy) 

Method Source Code


//package com.java2s;
/*//from   www  .j  a v a 2  s .  c  o  m
Copyright 2014 Array-Utilities
    
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.ArrayList;

import java.util.Collections;

import java.util.List;

public class Main {
    /**
     * Reverse list.
     *
     * @param <T> the generic type
     * @param list the list
     * @param shallowCopy the shallow copy
     * @return the list
     */
    public static <T> List<T> reverseList(List<T> list, boolean shallowCopy) {

        if (shallowCopy) {
            reverseListShallowCopy(list);
        } else {//Deep copy and then reverse
            List<T> list1 = new ArrayList<T>();
            for (int i = list.size() - 1; i >= 0; i--) {
                list1.add(list.get(i));
            }
            return list1;
        }
        return null;
    }

    /**
     * Reverse list shallow copy.
     *
     * @param <T> the generic type
     * @param list the list
     */
    public static <T> void reverseListShallowCopy(List<T> list) {
        Collections.reverse(list);
    }
}

Related

  1. reverseIterator(List list)
  2. reverseIterator(ListIterator iterator)
  3. reverseList(final List list)
  4. reverseList(List list)
  5. reverseList(List list)
  6. reverseList2(List list)
  7. reverseListShallowCopy(List list)
  8. reverseOrder(List list)
  9. reversePath(List pathParts)