Here you can find the source of copy(List
public static <T> ArrayList<T> copy(List<T> original)
//package com.java2s; /*//from w w w . j a v a 2 s. com * Hello Minecraft!. * Copyright (C) 2013 huangyuhui <huanghongxun2008@126.com> * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see {http://www.gnu.org/licenses/}. */ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class Main { public static <T> ArrayList<T> copy(List<T> original) { if (original == null) return null; ArrayList<T> ret = new ArrayList<>(original.size()); for (T x : original) ret.add(x); return ret; } public static <K, V> Map<K, V> copy(Map<K, V> original) { if (original == null) return null; HashMap<K, V> ret = new HashMap<>(original.size()); for (HashMap.Entry<K, V> x : original.entrySet()) ret.put(x.getKey(), x.getValue()); return ret; } }