I'll expand my comment a little bit.
One problem that can occur if you use asList as it wasn't different from ArrayList object:
List
Here you cannot remove the 0 element because asList returns a fixed-size list backed by the specified array. So you should do something like:
List
in order to make the newList modifiable.