8、List接口的特点及其相关功能
/*
* Collection
* |--List
* 元素有序(指的是存储顺序和取出顺序是否一致),可重复。
* |--Set
* 元素无序,唯一。
*/ /*
* List的特有功能:
* A:添加功能
* void add(int index, Object obj):在指定位置添加元素
* B:删除功能
* Object remove(int index):根据指定索引删除元素,并把删除的元素返回。
* C:修改功能
* Object set(int index, Object obj):把指定索引位置的元素修改为指定的值,返回修改前的值。
* D:获取功能
* int indexOf(Object o):返回指定元素在集合中第一次出现的索引
* Object get(int index):获取指定位置的元素
* ListIterator listIterator():列表迭代器
* E:截取功能
* List subList(int fromIndex, int toIndex):截取集合。
*/ /*
* ListIterator listIterator():列表迭代器
*
* public interface ListIterator extends Iterator
*
* 面试题:ConcurrentModificationException:并发修改异常。
* 这是个什么异常,怎么产生的,怎么解决的?
*
* 怎么产生:
* 当我们通过迭代器迭代元素的过程中,又通过集合去添加了元素。这种情况是不允许的。
* 因为迭代器是依赖于集合存在的,如果集合发生改变,迭代器也应该相应的发生改变。
* 而我们目前看到的确实,迭代器没变,集合变了。所以,报出了一个并发修改异常。
*
* 注意问题:通过迭代器遍历集合的时候,是不能通过集合去操作(添加,删除)。
* 那么,我们可不可以这样理解呢?
* A:全部通过迭代器操作:元素是添加到刚遍历的那个元素后面。
* 通过迭代器迭代的时候,可以通过迭代器对集合进行操作。
* B:全部通过集合操作:元素是添加到最后的。
* 通过集合普通for遍历的时候,可以通过集合去操作。
*/ /*
* ListIterator listIterator():列表迭代器
*
* boolean hasNext()
* Object next()
*
* 特有功能:
* boolean hasPrevious()
* Object previous() 逆向遍历
*
* 虽然,可以逆向遍历,但是,要求先正向遍历,然后才能逆向遍历。
*/
8、List接口的特点及其相关功能的更多相关文章
- SpringBoot中如何灵活的实现接口数据的加解密功能?
数据是企业的第四张名片,企业级开发中少不了数据的加密传输,所以本文介绍下SpringBoot中接口数据加密.解密的方式. 本文目录 一.加密方案介绍二.实现原理三.实战四.测试五.踩到的坑 一.加密方 ...
- 使用Hot Chocolate和.NET 6构建GraphQL应用(2) —— 实体相关功能实现
系列导航 使用Hot Chocolate和.NET 6构建GraphQL应用文章索引 需求 在本文中,我们将会准备好用于实现GraphQL接口所依赖的底层数据,为下一篇文章具体实现GraphQL接口做 ...
- 【Java EE 学习 21 下】【 使用易宝支付接口实现java网上支付功能】
一.网上支付分为两种情况,一种方法是使用直接和银行的支付接口,另外一种方法是使用第三方支付平台和银行对接完成支付. 1.直接和银行对接. 2.使用第三方支付平台 3.常见的第三方支付平台 二.使用易宝 ...
- 测试functional的bind以及相关功能
注:在VS2010 UPDATE1下测试通过 /*测试functional的bind以及相关功能*/ #include <iostream> #include <functional ...
- JobTracker等相关功能模块初始化
[Hadoop代码笔记]Hadoop作业提交之JobTracker等相关功能模块初始化 一.概要描述 本文重点描述在JobTracker一端接收作业.调度作业等几个模块的初始化工作.想过模块的介绍会在 ...
- 在github上最热门好评高的ROS相关功能包
在github上最热门最受欢迎的ROS相关功能包 下面依次列出,排名不分先后: 1 Simulation Tools In ROS https://github.com/ros-simulation ...
- Android高级控件(三)—— 使用Google ZXing实现二维码的扫描和生成相关功能体系
Android高级控件(三)-- 使用Google ZXing实现二维码的扫描和生成相关功能体系 摘要 现在的二维码可谓是烂大街了,到处都是二维码,什么都是二维码,扫一扫似乎已经流行到习以为常了,今天 ...
- LoadRunner(四)——深度了解LR相关功能
参考学习感谢:<精通软件性能测试与LoadRunner实战> 相关功能: 1 无工具情况下的性能测试 2性能测试工具LoadRunner的工作原理 3 VuGen应用介绍 4 协议的类型及 ...
- Android高级控件(三)—— 使用Google ZXing实现二维码的扫描和生成相关功能体系
Android高级控件(三)-- 使用Google ZXing实现二维码的扫描和生成相关功能体系 摘要 如今的二维码可谓是烂大街了.到处都是二维码.什么都是二维码,扫一扫似乎已经流行到习以为常了,今天 ...
随机推荐
- hibernate与spring整合
Spring与Hibernate整合关键点: 1) Hibernate的SessionFactory对象交给Spring创建: 2) hibernate事务交给spring的声明式事务管理. 1. D ...
- revit二次开发之族的类型参数与实例参数的转换
1背景小伙伴在做revit二次开发的时候,可能需要在族环境中将族的类型参数与实例参数相互转换. 2思路1.使用族管理器FamilyManager,参见注释12.首先获取需要转换的参数(单个与批量),参 ...
- PAT_A1034#Head of a Gang
Source: PAT A1034 Head of a Gang (30 分) Description: One way that the police finds the head of a gan ...
- js中writeln()方法
writeln( ) 方法与 write( ) 方法几乎一样,差别仅在于是前者将在所提供的任何字符串后添加一个换行符.在 HTML 中,这通常只会在后面产生一个空格:不过如果使用了 <PRE&g ...
- 认识一下.net的架构设计
首先我们先逐步的了解一下.net都包含什么? 从层次结构上来看,公共语言运行时(CLR:Common Language Runtime).服务框架(Services Framework)和上层的两类应 ...
- Tyvj - 1286 - 校门外的树2
描述 Description 某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米.我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置:数轴上的每个整数点,即0,1 ...
- 转载 - kmp next函数 kmp的周期问题,深入了解kmp中next的原理
出处:http://www.cnblogs.com/wuyiqi/archive/2012/01/06/2314078.html kmp next函数 kmp的周期问题,深入了解kmp中next的原理 ...
- 只读事务(@Transactional(readOnly = true))的一些概念
念:从这一点设置的时间点开始(时间点a)到这个事务结束的过程中,其他事务所提交的数据,该事务将看不见!(查询中不会出现别人在时间点a之后提交的数据) 应用场合: 如果你一次执行单条查询语句,则没有必要 ...
- JAVA:将反射技术应用于工厂模式(Factory)和单例模式(Singleton)的简单代码
反射技术大量用于Java设计模式和框架技术,最常见的设计模式就是工厂模式(Factory)和单例模式(Singleton). 参考URL: http://blog.csdn.net/xiaohai79 ...
- Spring MVC-Hello World示例(转载实践)
以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_hello_world_example.htm 说明:示例基于Spring MVC ...