question: public static < T > int copy ( final List < T > from , int first , int last , List < T > to ) { int i = first ; for ( ; i < last ; i ++ ) { to . add ( from . get ( i ) ) ; } return i ; }
target:  std:copy: Copy range of elements Copies the elements in the range [first,last) into a range beginning at result. Returns an iterator to the last element in the destination range Parameters first, last Input iterators to the initial and final positions in a sequence to be copied. The range used is [first,last), which contains all the elements between first and last, including the element pointed by first but not the element pointed by last. result Output iterator to the initial position in the destination sequence. This shall not point to any element in the range [first,last).