Java中如何“sublist”一个List

在实际开发过程,我经常用到java.util.List这个类里的一个subList方法,但是使用过程中(web开发),却发现这样一个问题:分割list没有达到我的预期,示例代码如下:

打印出来是一条数据,但是如果将这个反映到页面,确发现还是6条数据,于是进行dubug操作,发现原来list中的数据其实都还在

没处理前:

处理后:

查询了JDK帮助文档,发现这么一句话

The returned list is backed by this list, so non-structural changes in the returned list are reflected in this list, and vice-versa.

也就是说,其实sublist后的list结构并没有像我所想的是分割完之后的list,还是原来的。

解决方法:

在分割后重新new ArrayList<Person>,这样返回的list就是分割数据后的list。

 

转自:http://www.cnblogs.com/wentiertong/archive/2011/03/07/1973459.html