Java中AbstractList的add(E ele)方法及示例
AbstractList是Java中的一個(gè)抽象類,它實(shí)現(xiàn)了List接口的大部分方法,以便讓子類去繼承和實(shí)現(xiàn)一些特定的操作。愛掏網(wǎng) - it200.com其中,add(E ele)方法是AbstractList中的一個(gè)重要方法,它用于在列表的結(jié)尾添加指定的元素。愛掏網(wǎng) - it200.com
add(E ele)方法是List接口中的一個(gè)方法,在AbstractList中被實(shí)現(xiàn)為:
public boolean add(E ele) {
add(size(), ele);
return true;
}
這個(gè)方法首先會調(diào)用add(int index, E ele)方法,在索引為size()處添加指定的元素,然后返回true。愛掏網(wǎng) - it200.com
add(int index, E ele)方法的定義
add(int index, E ele)方法則是AbstractList中實(shí)現(xiàn)為抽象方法的方法之一,它的定義如下:
public abstract void add(int index, E ele);
這個(gè)方法會在指定的索引位置插入指定的元素,從而改變列表的大小。愛掏網(wǎng) - it200.com當(dāng)插入的位置等于列表的大小時(shí),則等于在結(jié)尾處添加元素。愛掏網(wǎng) - it200.com如果插入的位置小于0或者大于列表的大小,則會拋出IndexOutOfBoundsException異常。愛掏網(wǎng) - it200.com
示例代碼
下面我們來看一個(gè)使用add(E ele)方法的例子。愛掏網(wǎng) - it200.com我們要實(shí)現(xiàn)一個(gè)名為PersonList的類,它繼承自AbstractList并用來管理我們自定義的Person對象。愛掏網(wǎng) - it200.com我們的Person類只有兩個(gè)屬性,姓名和年齡。愛掏網(wǎng) - it200.com首先,我們需要定義這個(gè)類:
public class PersonList extends AbstractList<Person> {
private List<Person> persons = new ArrayList<>();
@Override
public void add(int index, Person ele) {
persons.add(index, ele);
}
@Override
public Person get(int index) {
return persons.get(index);
}
@Override
public int size() {
return persons.size();
}
}
在PersonList中,我們實(shí)現(xiàn)了add(int index, Person ele),get(int index)和size()方法,分別用于插入元素,獲取元素和返回列表的大小。愛掏網(wǎng) - it200.com我們使用了ArrayList來存儲Person對象。愛掏網(wǎng) - it200.com接下來我們來測試一下:
public static void main(String[] args) {
PersonList personList = new PersonList();
personList.add(new Person("Alice", 20));
personList.add(new Person("Bob", 30));
personList.add(new Person("Charlie", 40));
for(int i=0; i<personList.size(); i++) {
System.out.println(personList.get(i).toString());
}
}
在這段代碼中,我們首先創(chuàng)建了一個(gè)PersonList對象,然后通過調(diào)用add方法向列表中添加三個(gè)Person對象。愛掏網(wǎng) - it200.com接著,我們使用一個(gè)for循環(huán)遍歷列表中的元素,并將它們的屬性輸出到控制臺。愛掏網(wǎng) - it200.com運(yùn)行上述代碼將會輸出:
Name: Alice, Age: 20
Name: Bob, Age: 30
Name: Charlie, Age: 40
結(jié)論
Java中AbstractList的add(E ele)方法和add(int index, E ele)方法是List接口中的兩個(gè)關(guān)鍵方法,通過它們我們可以向列表中添加元素或者插入一些元素。愛掏網(wǎng) - it200.comAbstractList提供了List中的大部分方法的實(shí)現(xiàn),讓我們可以很方便地創(chuàng)建出自己的列表類。愛掏網(wǎng) - it200.com