Here you can find the source of castList(Class
public static final <T> List<T> castList(Class<T> klass, List list)
//package com.java2s; /******************************************************************************* * Copyright 2014 United States Government as represented by the * Administrator of the National Aeronautics and Space Administration. * All Rights Reserved./*from www . j a v a2 s .co m*/ * * 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 { public static final <T> List<T> castList(Class<T> klass, List list) { return castList(klass, list, false); } /** * Returns a new list of the items in list, casting all of them to the provided class. So, it will throw a ClassCastException if any of the items can not be cast to the provided class. * * @param klass * @param list * @return a new list of the items in list */ public static final <T> List<T> castList(Class<T> klass, List list, boolean unmodifiable) { if (list == null) return null; List<T> result = new ArrayList<T>(list.size()); for (Object object : list) { result.add(klass.cast(object)); } return unmodifiable ? Collections.unmodifiableList(result) : result; } }