ArrayList的set方法更改指定下标存储元素,返回值为下标原存储元素

public E set(int index, E element) {
    if (index >= size)
        throw new IndexOutOfBoundsException(outOfBoundsMsg(index));
    E oldValue = (E) elementData[index];
    elementData[index] = element;
    return oldValue;
}

上面是set方法的源代码,首先先判断是否下标越界,越界则报错;再进行常规的替换元素。但是在最后它返回的元素为原始存储的元素。

如有问题请指出。

package edu.huanu; /** * 通过底层数组模拟实现ArrayList */ public class MyArrayList { //示当前集合的长度(有多少数据) private int size; //底层存储数据的数组 private int[] targetArray; //第1关:1. 声明无参数构造器,targetArray长度为10 //第1关:2. 声明有参数构造器,指定targetArray长度的长度 //第2关:1. 实现add方法,向targetArray的最后添加一个数据 public void add(int data){ //方法中可以直接访问targetArray和size,应为它们的作用整个类中 } //第3关:1. 重载add方法,向targetArray的指定位置插入一个数据 public void add(int index,int data){ //方法中可以直接访问targetArray和size,应为它们的作用整个类中 } //第3关:1. 实现print方法,将MyArrayList中的实际数据输出到控制台 // 输出格式例如:1 2 3 4 5 6(数据之间使用空格隔开) public void print(){ //方法中可以直接访问targetArray和size,应为它们的作用整个类中 } //第4关: 实现delete方法,将指定位置的数据删除 //返回值为被删除的数据 public int delete(int index){ return -1; } //第4关 实现set方法,对指定位置的数据重新设值 public void set(int index, int data){ } //第5关: 实现indexOf方法,判断data第一次在数组中出现的下标 //如果data在数组中不存在,则返回-1 public int indexOf(int data){ return -1; } //第5关:实现clear方法,将集合中的数据清空 public void clear(){ } /** * 返回MyArrayList的长度,实际存储数据的个数 */ public int size(){ return size; } }
03-17
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值