public Collection<Comment> getCommentCollection() { commentCollection = movie.getCommentCollection(); return split((List<Comment>) commentCollection,4); } public Collection<Comment> split(List<Comment> list,int size){ int numBatches = (list.size() / size) + 1; Collection[] batches = new Collection[numBatches]; Collection<Comment> set = commentCollection; for(int index = 0; index < numBatches; index++) { int count = index + 1; int fromIndex = Math.max(((count - 1) * size),0); int toIndex = Math.min((count * size),list.size()); batches[index] = list.subList(fromIndex,toIndex); set = batches[index]; } return set; }
嗨,我试图将一个集合分成较小的集合,具体取决于“母”集合中的项目数,并在每次调用get方法时跟踪那些较小的集合中的一个(跟踪哪一个集合)),有人可以给我一只手吗?
非常感谢你.
伊格纳西奥
解决方法
List<E> subList(int fromIndex,int toIndex)
Returns a view of the portion of this list between the specified fromIndex,inclusive,and toIndex,exclusive. (If fromIndex and toIndex are equal,the returned list is empty.) The returned list is backed by this list,so non-structural changes in the returned list are reflected in this list,and vice-versa. The returned list supports all of the optional list operations supported by this list.
This method eliminates the need for explicit range operations (of the sort that commonly exist for arrays). Any operation that expects a list can be used as a range operation by passing a subList view instead of a whole list. For example,the following idiom removes a range of elements from a list:
list.subList(from,to).clear();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。