ArrayList 中 subList 的基本用法:
subList方法是在给定的ArrayList集合中获取给定下标的子集合,
在使用集合中,可能常常需要取集合中的某一部分子集来进行一下操作,于是subList这个方法就映入我们的眼帘,毫不犹豫地使用。
例如以下代码:
publicstaticvoid main(finalString[] args){
List<Object> lists =newArrayList<Object>();
lists.add("1");
lists.add("2");
lists.add("3");
lists.add("4");
List<Object> tempList = lists.subList(2, lists.size());
tempList.add("6");
System.out.println(tempList);// 1
System.out.println(lists);// 2
}
代码初步写好后,可能我们想达到的效果是:往集合lists的子集合tempList中添加一个元素6,而原有的集合保持不变。
即到达这样的效果:lists = [1, 2, 3, 4],tempList = [3, 4, 6]。但是我们看到实际的结果确是lists里边也添加了元素6。
当我们使用子集合tempList进行元素的修改操作时,会影响原有的list集合。所以在使用subList方法时,一定要想清楚,是否需要对子集合进行修改元素而不影响原有的list集合。
如果需要对子集合的元素进行修改操作而不需要影响原集合时,我们可以使用以下方法进行处理:
publicstaticvoid main(finalString[] args)publicstaticvoid main(finalString[] args){
List<Object> lists =newArrayList<Object>();
lists.add("1");
lists.add("2");
lists.add("3");
lists.add("4");
//注意这里是和本文顶部的代码不同的....
List<Object> tempList =newArrayList<Object>(lists.subList(2, lists.size()));
tempList.add("6");
System.out.println(tempList);// 1
System.out.println(lists);// 2
}
注意:在针对获取的子集合进行的一些增加、删除、修改操作全会直接影响到原有的父类集合
list.sublist(2,4) 就返回一个子集合:它的内容包括从下标为2到下标为4,而且这是左闭右开的 就是说是从大于等于2到小于4 (集合的下标都是从0开始)
相关推荐
本篇文章主要介绍了java中list数据拆分为sublist实现页面分页的简单代码,具有一定的参考价值,有需要的可以了解一下。
英语Sublist list1答案
主要介绍了为什么要慎重使用ArrayList中的subList方法,subList是List接口中定义的一个方法,该方法主要用于返回一个集合中的一段、可以理解为截取一个集合中的部分元素,他的返回值也是一个List。,需要的朋友可以...
包含⼦list ⽰例: @{list} Create List lilei hanmeimei liming liliang liming @{sublist} Create List lilei hanmeimei # 是否包含⼦list List Should Contain Sub List ${list} ${sublist} 6 List Should Not ...
Arrays.asList、ArrayList的subList坑
AWL(academic-word-list)-学术词汇表 精校版,含扩展词汇,本文档共40页,精校,便于打印学习。...Sublist 1(第1类)包含的词汇最常用,sublist 2(第2类)中度的词汇使用频率稍低,其他的sublist3 依次类推。
numbers indicate the sublist of the Academic Word List. For example, abandon and its family members are in Sublist 8 of the Academic Word List. Sublist 8 is on page 33 in this book.
The numbers indicate the sublist of the Academic Word List. For example, abandon and its family members are in Sublist 8 of the Academic Word List. Sublist 1 contains the most common words in the AWL...
场景:有一个多层嵌套的列表如:[[23],[3,3],[22,22],1,123,[[123,a],2]] 拆分成: def splitlist(list): ''' 现有一个列表,里面元素包括 数字,字母,列表,字典等元素,... for sublist in list: try: #用try来
List Processor Sublist Functions 220 List Processor Attribute Functions 221 Miscellaneous List Processor Functions 222 List Processor Examples 223 Easy to Use List Processor Functions 227 Appendix I ...
整个系统使用菜单驱动方式, 每个菜单包括若干菜单项。每个菜单项对应一个动作或一个子菜单。系统一直处于选择菜单项或执行动作状态, 直到选择了退出动作为止。 1. 顺序表 (1)在顺序表中插入一个数据元素(ins_...
链表 (1)创建一个单链表(Crt_LinkList) (2)在单链表中插入一个结点(Ins_LinkList) (3)删除单链表中的一个结点(Del_LinkList) (4)两个有序链表求并(Union) (5)归并两个有序链表(MergeList_...
苗条的降价 Markdown解析器,可呈现为Svelte组件。 受启发。 安装 您可以使用安装 ...* This is a list * With two items 1. And a sublist 2. That is ordered * With another * Sublist inside | And this
整个系统使用菜单驱动方式, 每个菜单包括若干菜单项。每个菜单项对应一个动作或一个子菜单。系统一直处于选择菜单项或执行动作状态, 直到选择了退出动作为止。 系统内容 本系统内含84个算法,分属13部分内容,由...
早前在做项目的时候, 用到RecycleView,但是在加载数据的时候,list.add(subList);然后在调用其刷新方法notifyDataSetChanged();就是出现item闪烁灯问题。这是因为recycleView自带的ItemAnimator惹的祸。那么我们...
整个系统使用菜单驱动方式, 每个菜单包括若干菜单项。每个菜单项对应一个动作或一个子菜单。系统一直处于选择菜单项或执行动作状态, 直到选择了退出动作为止。 二、 系统内容 本系统内含84个算法,分属13部分内容,...
列表界面Java API add( T ) add( T, index ) addAll( T[] ) addAll( index, T[] ) clear() contains( T ) containsAll( T[] ) equals( List ) get( index ) hashCode() indexOf( T ) isEmpty() : bool iterator() ...
首先后台分页需要理清分页思路,把数据库里面需要分页的信息放到List集合中,然后按照页面反馈给后台的页码对List集合进行SubList切割把切完的List传到前端进行显示。 1.分页的demo文件结构图 导入的包 2.代码 ...
3. 断点的设置方法为:移动光标至“断点语句”所在行,点击鼠标后即出现绿色光条,之后单击“断点”菜单中的“设置断点”命令项即可,此时该断点语句所在行上将出现红色光条。 六、 算法演示屏的详细说明 本系统...