List集合(列表)
List集合也称列表
List整体规则是存储的元素有序且可以重复;因为List集合中的元素都有角标,角标也是从0开始,最大角标是size()-1;所以其元素是有序的且是可以重复的。
List集合的通用操作:
List接口在继承了Collection接口的通用方法的基础上,又提供了自己特有的操作方法。
创建List集合
List list1 = new ArrayList();
添加
add()
添加元素
add(int index,object obj)
给参数角标位置插入参数元素。
addAll(int index, Collection c)
将参数Collection集合中的所有元素插入添加到当前集合的参数一角标位置;
get(int index)
获取参数角标对应的元素
indexOf(Object o)
正向搜索参数元素在list中第一次出现的位置;
int | lastIndexOf(Object o)
反向搜索参数元素在list中最后一次出现的位置;
remove(Object o)
从List集合中删除参数元素
Object | remove(int index)
从List集合中删除参数角标对应的元素
set(int index, Object obj)
将List中的参数一角标的元素用参数二元素替换
subList(int fromIndex, int toIndex)
截取当前list集合中fromIndex角标到toIndex角标之间部分
List集合的遍历方式
1.迭代器方式
2. 角标遍历方式:for循环
- orEach循环(增强for循环)遍历
for(int i : array) {System.out.println(i);}
List集合的常用实现:
一、ArrayList和Vector:
ArrayList和Vector底层的数据结构都是可变长数组数据结构。
所以其是查询(获取元素)效率较高(只要明确元素角标就能直接拿到对应的元素);
其删除和添加元素的效率较低(当添加元素时,添加的元素位置之后的所有元素都要一个一个后移,删除元素的时候,删除的元素位置之后的元素都要一个一个前移)。
区别:
1)ArrayList是线程不安全的,其在操作数据的时候不需要同时处理线程安全问题,所以执行效率高;
Vector是线程安全的,其在操作数据时还要同时处理线程安全问题,所以执行效率较低。
2)Vector基本过时被淘汰了,使用的基本都是ArrayList;ArrayList的线程不安全的问题交由多线程技术去处理。
二、LinkedList:
链表式数据结构:
是通过后面元素去记录其前面元素的地址而构成的一个链表。
LinkedList因为其底层是链表式数据结构,所以其添加和删除操作效率较高(因为添加和删除元素只需要改变元素的指向地址);查询效率较低(因为其检索某个元素都是从头至尾去检索的)。
链表式数据结构收尾元素是最容易操作的,而LinkedList提供的方法更多的也是用于操作首尾元素的。
List集合(列表)相关推荐
- 递归函数 集合 列表 元组
#递归函数 <1>什么是递归函数 通过前面的学习知道一个函数可以调用其他函数. 如果一个函数在内部不调用其它的函数,而是自己本身的话,这个函数就是递归函数. 一个递归函数必定会有一个基线条 ...
- python总结字典集合列表_python 列表,元组,字典,集合,字符串相互转换
本文主要介绍列表,元组,字典,集合以及和字符串之间的相互转换. 1. 列表与元组的互换 # 将列表转化为元组 li = [1, 2, 3] t = tuple(li) print(t, type(t) ...
- java中 先进后出的集合_程序猿的日常——Java中的集合列表
列表对于日常开发来说实在是太常见了,以至于很多开发者习惯性的用到数组,就来一个ArrayList,根本不做过多的思考.其实列表里面还是有很多玩法的,有时候玩不好,搞出来bug还得定位半天.所以这里就再 ...
- 07-函数作用域和集合列表字典元祖
# 变量作用域 - 变量由作用范围限制 - 分类:按照作用域分类- 全局(global): 在函数外部定义- 局部(local):在函数内部定义 - 变量的作用范围:- 全局变量:在整个全局范围都有效 ...
- python集合可以修改吗_修改包含Python3中的集合的集合列表-问答-阿里云开发者社区-阿里云...
我试图创建一个以元组为元素的列表.每个元组都有4个整数.前两个整数是对2个range进行压缩的结果,而其他2个则是对2个不同的整数进行压缩的结果. 我正在使用此代码创建元组和最终列表,这些列表是从笛卡 ...
- 列表逆序排序_【Python自学笔记】集合——列表
list列表类型是一个与元组tuple类似的有序序列.构造函数是list() 切片 # 切片 fruit = ["Apple", "Hawthorn", &qu ...
- JSTL标签循环集合列表
实体类代码: private List<Picture> picts;public List<Picture> getPicts() {return picts;} 实体对象: ...
- ASP内置对象Request的ServerVariables集合列表
Request.ServerVariables("Url") 返回服务器地址 Request.ServerVariables("Path_Info") 客户端提 ...
- python列表、集合、字典、元祖用途_Python-函数作用域和集合列表字典元祖
#globals 和 locals#globals 和 locals 叫做内建函数 a = 1b= 2 deffun(c,d): e= 111 print("Locals={0}" ...
- python字典内存分析_python--序列,字符串,列表,元组,字典,集合内存分析
一,什么是序列. 序列是一种数据存储方式,用来存储一系列的数据,在内存(堆内存)中,序列是一块用来存放多个值的连续的内存空间,其存储的值为所指向对象的地址.比如说a = [ 10 , 20 , 30 ...
最新文章
- Blender+Substance Painter全流程制作真实的机器人学习教程
- 宽依赖和窄依赖_Spark术语解释及宽窄依赖执行原理,代码分析
- jdk8 List集合 Stream distinct() 去重代码示例
- 为pc编译配置安装当前最新的内核
- 首次push本地代码到github上出现的问题及解决方案
- Docker学习笔记五 在测试中使用Docker
- python历史 用量 预测_用python做时间序列预测七:时间序列复杂度量化
- jQuery height()、innerHeight()、outerHeight()函数的区别详解
- oracle64位 32位plsql,64位oracle 安装32位plsql develop
- 提升工作效率的一些工具
- 11款企业网络运维监控软件汇总介绍-行云管家
- 如何绘制用例图 - How to Draw Use Case Diagram
- excel计算机求和函数,多条件求和、多条件计数、多条件查找……多了去了!
- 计算机英语这门课上后感1000,英语公开课观后感作文1000字
- 人工智能初识,百度AI
- redis系列,redis的异步删除我该怎么用?
- 解压文件到服务器是什么意思,linux中zip文件解压命令是什么
- jenkins部署的时候WARNING: IPv4 forwarding is disabled. Networking will not work.
- 全网最精减、安装最简单、无头疼配置的Katago教程,大小才168M,职业水平,散仙订制版
- 访问tomcat 服务器出现,Welcome to nginx!