public static List<?> cloneList(List<?> source){
  ParamChecks.nullNotPermitted(source,"source");
  List result=new ArrayList();
  for (  Object obj : source) {
    if (obj != null) {
      try {
        result.add(ObjectUtilities.clone(obj));
      }
 catch (      CloneNotSupportedException ex) {
        throw new RuntimeException(ex);
      }
    }
 else {
      result.add(null);
    }
  }
  return result;
}

public static List < ? > cloneList ( List < ? > source ) { ParamChecks . nullNotPermitted ( source , "source" ) ; List result = new ArrayList ( ) ; for ( Object obj : source ) { if ( obj != null ) { try { result . add ( ObjectUtilities . clone ( obj ) ) ; } catch ( CloneNotSupportedException ex ) { throw new RuntimeException ( ex ) ; } } else { result . add ( null ) ; } } return result ; }
returns a list containing cloned copies of the items in the source list .
