当前位置: 首页 > news >正文

List接口和常用方法

基本介绍: 

List接口是Collection接口的子接口

1)List集合类中元素有序(即添加顺序和取出顺序一致),且可重复

2)List集合中每个元素都有其对应的顺序索引,即支持索引(索引是从0开始的)

3)List容器中的元素都对应一个整数型的序号记载其在容器中的位置 , 可以根据序号存取容器中的元素

4)JDK API中List接口的实现类有:

List接口的常用方法:

List集合里添加了一些根据索引来操作集合元素的方法:

1)void add(int index,Object ele):在index位置插入ele元素

2)boolean addAll(int index,Collection eles):从index位置开始将eles中的所有元素添加进来

3)Object get(int index):获取指定index位置的元素

4)int indexOf(Object obj):返回obj在集合中首次出现的位置

5)int lastIndexOf(Object obj):返回obj在集合中末次出现的位置

6)Object remove(int index):移除指定index位置的元素,并返回此元素

7)Object set(index,Object ele):设置指定index位置的元素为ele,相当于是替换

8)List subList(int fromIndex,int toIndex):返回从fromIndex到toIndex位置的子集合

package com.ArrListStu.List_;import java.util.ArrayList;
import java.util.List;public class ListMethod {public static void main(String[] args) {List list = new ArrayList();list.add("张三丰");list.add("贾宝玉");//        1)void add(int index,Object ele):在index位置插入ele元素//在索引=1的位置插入字符串//如果没带索引,默认加在最后面list.add(1,"刘备");System.out.println(list);//        2)boolean addAll(int index,Collection eles):从index位置开始将eles中的所有元素添加进来List list2 = new ArrayList();list2.add("jack");list2.add("tom");list.addAll(1,list2);//把list2插入list索引为1的位置,后面的往后移System.out.println(list);//        3)Object get(int index):获取指定index位置的元素System.out.println(list.get(1));//        4)int indexOf(Object obj):返回obj在集合中首次出现的位置System.out.println(list.indexOf("tom"));//        5)int lastIndexOf(Object obj):返回obj在集合中末次出现的位置list.add("tom");System.out.println(list.lastIndexOf("tom"));//        6)Object remove(int index):移除指定index位置的元素,并返回此元素list.remove(0);System.out.println(list);//        7)Object set(index,Object ele):设置指定index位置的元素为ele,相当于是替换list.set(1,"mary");//索引必须是事先存在的//        8)List subList(int fromIndex,int toIndex):返回从fromIndex到toIndex位置的子集合//以list.subList(0, 2) 为例,取到的是大于0且包含0, 小于2但不包含2之间的数,也就是左闭右开 [0,2)List returnList = list.subList(0, 2);System.out.println(returnList);//[jack, mary]System.out.println(list);}
}

习题:

添加十个以上的元素(比如String"hello"),在2号位插入一个元素"泥嚎",获得第五个元素,删除第六个元素,修改第七个元素,再使用迭代器遍历集合

package com.ArrListStu.List_;import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;public class ListExe {public static void main(String[] args) {List list = new ArrayList();list.add("a");list.add("b");list.add("c");list.add("d");list.add("e");list.add("f");list.add("g");list.add("h");list.add("i");list.add("j");list.add("k");list.add(2,"泥嚎");Object obj = list.get(5);list.remove(6);list.set(7,"修改的索引7");Iterator iterator = list.iterator();while (iterator.hasNext()) {Object next =  iterator.next();System.out.println(next);}}
}

List的三种遍历方式:

1)使用iterator 迭代器

2)增强for

3)使用普通for

package com.hspedu.list_;import java.util.*;public class ListFor {@SuppressWarnings({"all"})public static void main(String[] args) {//List 接口的实现子类 Vector LinkedList//List list = new ArrayList();//List list = new Vector();List list = new LinkedList();list.add("jack");list.add("tom");list.add("鱼香肉丝");list.add("北京烤鸭子");//遍历//1. 迭代器Iterator iterator = list.iterator();while (iterator.hasNext()) {Object obj =  iterator.next();System.out.println(obj);}System.out.println("=====增强for=====");//2. 增强forfor (Object o : list) {System.out.println("o=" + o);}System.out.println("=====普通for====");//3. 使用普通forfor (int i = 0; i < list.size(); i++) {System.out.println("对象=" + list.get(i));}}
}

http://www.dtcms.com/a/560852.html

相关文章:

  • 计算机一级考试网站怎么做用织梦系统做网站产权
  • Java 数据结构第二十八期:反射、枚举以及 lambda 表达式
  • Linux 磁盘分区与系统监控完全指南
  • 是普通网站地图好还是rss地图好一点网站建设申请费用
  • 使用Graphics2D创建滑块验证码
  • Flutter provide框架内部实现原理刨析
  • 关于rpm,yum,apt
  • 15.6.Bat脚本编写
  • 景德镇网站制作广告法
  • 可以做头像的网站网站区域名是什么
  • 新手记录使用uniapp-x开发鸿蒙应用
  • Linux+Apache+MySQL+PHP 架构下搭建 Discuz 社区论坛
  • 可替代Github Copilot的插件分享CodeGeeX
  • Ubuntu学习笔记
  • 双非大学生自学鸿蒙5.0零基础入门到项目实战 - 歌曲列表
  • 双非大学生自学鸿蒙5.0零基础入门到项目实战 -ArkTs核心
  • UVa 10989 Bomb Divide and Conquer
  • 【Linux】版本控制器Git和调试器—gdb/cgdb的使用
  • 怎么把个人做的网站上传到网上wordpress用户名钩子
  • 成都网站排名网站添加邮件发送怎么做
  • Spring AI 极简入门:15分钟集成AI到SpringBoot应用
  • 临潼城市建设局网站外资公司注册
  • 1.基础--数据库相关概念
  • 使用DTS迁移工具迁移oracle到DM
  • langchain agent的短期记忆
  • 使用DrissionPage和自动化技术实现得物鞋子信息爬取
  • 做网站的是干嘛的为网站添加统计
  • 网站设计的建设目的做网站推销手表
  • [LitCTF 2023]Vim yyds
  • LNMP环境部署 KodBox私有云盘