List 集合的常用方法
List接口是继承Collection接口,所以Collection集合中有的方法,List集合也继承过来。
1、void add(int index, E element)
在指定位置插入元素,后面的元素都往后移一个元素。
public static void main(String[] args) {
List list1 = new ArrayList<>();
list1.add("aaa");
list1.add("bbb");
list1.add("ccc");
System.out.println("list1:" + list); // [aaa,bbb,ccc]
list1.add(2,"zzz");
System.out.println("list1:" + list); // [aaa,bbb,zzz,ccc],元素插入到索引2位置处
}
2、boolean addAll(int index, Collection<? extends E> c)
在指定的位置中插入c集合全部的元素,如果集合发生改变,则返回true,否则返回false。
意思就是当插入的集合c没有元素,那么就返回false,如果集合c有元素,插入成功,那么就返回true。
List list2 = new ArrayList<>();
List list3 = new ArrayList<>();
list2.add("星期一");
list2.add("星期二");
Boolean b = list1.addAll(2,list2); //把list2元素插入到list1中索引位置为2处。
System.out.println("list1:" + list); // [aaa,bbb,星期一,星期二,ccc]
System.out.println("list1集合是否发生变化:" + b); // true
b = list1.addAll(2,list3); //把list3元素插入到list1中索引位置为2处。
System.out.println("list1:" + list); // [aaa,bbb,星期一,星期二,ccc]
System.out.println("list1集合是否发生变化:" + b); // false
3、E get(int index)
返回list集合中指定索引位置的元素。
Object obj1 = list1.get(2); //obj1 = 星期一,索引从0开始
Object obj2 = list1.get(4); //obj2 = ccc
4、int indexOf(Object o)
返回list集合中第一次出现o对象的索引位置,如果list集合中没有o对象,那么就返回-1。
int i = list1.indexOf("demo2"); //i = 1
int j = list1.indexOf("你好"); //i = -1
5、ListIterator<E> listIterator()
返回此列表元素的列表迭代器(按适当顺序)。listIterator和iterator的区别可以参考。404
这里大概讲一下他们的区别:当只需要遍历集合时,两个迭代器的功能都是一样。但是listIterator迭代器只能用于List和他的实现子类,iterator迭代器可以用于所有的集合使用。所不同的就是listIterator迭代器的功能会比iterator迭代器的功能要多。listIterator迭代器可以在遍历集合时添加、修改和删除,而iterator迭代器在遍历集合时只有删除。
6、ListIterator<E> listIterator(int index)
从指定位置开始,返回此列表元素的列表迭代器(按适当顺序)。和上面那个迭代器不同的就是多了一个参数,就是能控制迭代器开始的位置。
7.List.iterator()
方法用于返回按适当顺序在列表的元素上进行迭代的迭代器。方法返回值为 Iterator 对象。
本例使用 List 接口的实现类 ArrayList 初始化一个列表对象 list,并向该列表中添加 3 个元素,然后调用 iterator 方法获取该列表的迭代器,最后通过循环输出该列表中的全部元素。
public static void main(String[] args){
List<String>list = new ArrayList<String>();
list.add("保护环境");
list.add("爱护地球");
list.add("从我做起");
Iterator it = list.iterator(); //获取Iterator对象
while(it.hasNext()){ //循环遍历Iterator对象
System.out.println(it.next()); //输出Iterator对象中的值 保护环境,爱护地球,从我做起
}
}
8、E remove(int index)
删除指定索引的对象。
list1.remove(2);
System.out.println("list1:" + list); // [aaa,bbb,星期二,ccc]
9、E set(int index, E element)
在索引为index位置的元素更改为element元素。
list1.set(2,"nihao");
System.out.println("list1:" + list); // [aaa,bbb,nihao,ccc]
10、List<E> subList(int fromIndex, int toIndex)
返回从索引fromIndex到toIndex的元素集合,包左不包右。
reslist = list1.subList(1,3);
System.out.println("reslist:" + reslist); // [bbb,nihao]
有帮到你点赞、收藏一下吧
需要更多教程,微信扫码即可
List 集合的常用方法相关推荐
- OC基础第四讲--字符串、数组、字典、集合的常用方法
OC基础第四讲--字符串.数组.字典.集合的常用方法 字符串.数组.字典.集合有可变和不可变之分.以字符串为例,不可变字符串本身值不能改变,必须要用相应类型来接收返回值:而可变字符串调用相应地方法后, ...
- ArrayList集合的常用方法
ArrayList集合的常用方法 ArrayList集合的创建 非泛型 创建ArrayList集合对象,可以添加任意Object子类元素至集合 //非泛型创建的ArrayList集合对象可以保存任何类 ...
- Java14-day05【集合(Collection常用方法-遍历、List特有方法、List集合子类特点、LinkedList集合的特有功能、ListIterator)】
视频+资料(工程源码.笔记)[链接:https://pan.baidu.com/s/1MdFNUADVSFf-lVw3SJRvtg 提取码:zjxs] Java基础--学习笔记(零起点打开java ...
- 二十三、PHP框架Laravel学习笔记——集合的常用方法
一.常用方法 all()方法,转换为属性形式输出,使用 dd 方法看类型: $collection = collect([1, 2, 2, 3, 4, 4, 4]); dd($collection-& ...
- 列表,元组,集合,字典常用方法
列表(元组)常用方法 append(data) 追加 将参数data追加到列表末尾,不管data是个什么玩意都当做元素对待list.append(data) extend(model) 合并 将两个列 ...
- java方法返回list_Java中List集合的常用方法
List List接口是继承Collection接口,所以Collection集合中有的方法,List集合也继承过来. 常用方法: void add(int index, E element) 在指定 ...
- map集合中常用方法
一.map集合常用方法 import java.util.HashMap; import java.util.Map; import java.util.Set;//Map(映射)集合 <键,值 ...
- python常用字符大全_python字符串,列表,字典,集合的常用方法
1.字符串 1.1find方法可以在一个较长的字符串中查找子串,他返回字串所在位置的最左端索引,如果没有就返回-1 1.2join方法是非常重要的字符串方法,它是split方法的逆方法,用于连接序列中 ...
- 元组、字典、集合的常用方法
一.元组类型 1.定义 t1 = () print(t1, type(t1)) # 参数为for可以循环的对象(可迭代对象) t2 = tuple("123") print(t2, ...
- map集合的常用方法和遍历
概念: 现实生活中,我们常会看到这样的一种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等,这种一一对应的关系,就叫做映射.Java提供了专门的集合类用来存放这种对象关系的对象,即j ...
最新文章
- centos重启网络失败Job for network.service failed,ping不通网络
- 【转】浅析C语言的非局部跳转:setjmp和longjmp
- Matlab 条形图实例
- BAT集体升级云事业部,这背后都藏着哪些“小心思”?
- oracle instant client配置(MAC OS)
- 你还没听过 CynosDB 吗?不来这场数据库技术沙龙就要 OUT 了!
- Swift 团队开源 Collections,提供更多高效数据结构
- 记第一次在程序中埋彩蛋
- DPDK设备驱动的匹配和初始化
- 鸿蒙系统主题如何自定义,华为鸿蒙系统细节曝光 支持自定义选项
- SQL Server数据类型一览表
- 服务器和交换机物理连接_什么是光纤交换机?有什么功能?
- php判断信用卡,php校验信用卡卡号代码
- 光耦参数理解(转载)
- 计算机网络的软件系统包括哪几部分,系统软件由哪几部分组成?
- 哇,你也想自由职业啊
- 安卓开发-接收系统广播
- 我对价值投资的思考(二)
- 视频会议终端到终端的加密
- dxp全称_DXP元件名字库
热门文章
- 威马汽车CEO沈晖:汽车“报复性”消费不现实
- 快手员工泄露10亿元公司机密 被开除并收回期权,官方暂未回应...
- 郎朗钢琴课独家上线知乎 手把手带你开启钢琴之路
- 小米手环4 NFC版将全渠道开售:垃圾分类超智能
- 华为Mate 30 Pro最新渲染图曝光:六摄造型 越看越顺眼了?
- 影院要求自费购买3D眼镜是“霸王条款” 官方都开始吐槽了!
- 贝佐斯首次展示月球着陆器 蓝色起源2024年载人登月
- awk文本处理总结(入门,中级,高级)
- 从开场白第一句到得分
- APP后端数据接口注意事项