两个arraylist操作

1. 两个arraylist指定位置替换数据还是对象 对于少量数据

可以使用set(index,E element) api的解释

public E set(int index,
             E element)
用指定的元素替代此列表中指定位置上的元素。

指定者:
接口  List<E> 中的  set
覆盖:
类  AbstractList<E> 中的  set
参数:
index - 要替代的元素的索引
element - 存储在指定位置上的元素
返回:
以前位于该指定位置上的元素
抛出:
IndexOutOfBoundsException - 如果索引超出范围 (  index < 0 || index >= size())


数据量大的时候,可以考虑sublist()方法  此方法是左闭右开的。

返回列表中指定的  fromIndex (包括 )和  toIndex (不包括)之间的部分视图。(如果  fromIndex  和  toIndex  相等,则返回的列表为空)。返回的列表由此列表支持,因此返回列表中的非结构性更改将反映在此列表中,反之亦然。返回的列表支持此列表支持的所有可选列表操作。

此方法省去了显式范围操作(此操作通常针对数组存在)。通过传递 subList 视图而非整个列表,期望列表的任何操作可用作范围操作。例如,下面的语句从列表中移除了元素的范围:

            list.subList(from, to).clear();
 
可以对  indexOf  和  lastIndexOf  构造类似的语句,而且  Collections  类中的所有算法都可以应用于 subList。

如果支持列表(即此列表)通过任何其他方式(而不是通过返回的列表)从结构上修改,则此方法返回的列表语义将变为未定义(从结构上修改是指更改列表的大小,或者以其他方式打乱列表,使正在进行的迭代产生错误的结果)。









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值