欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java棧和隊列的父類

吳曉飛1年前7瀏覽0評論

Java編程語言中的棧和隊列都屬于數據結構中的一類,它們都可以通過繼承同一父類來實現基本操作的統一,這個父類就是java.util.AbstractCollection

public abstract class AbstractCollectionimplements Collection{
//抽象類中已經實現的接口方法:add(), remove(), isEmpty()等。
//size(), iterator(), clear()方法需要同樣被子類實現。
public abstract Iteratoriterator();
public abstract int size();
public boolean add(E e){
throw new UnsupportedOperationException();
}
public boolean remove(Object o){
Iteratorit = iterator();
if (o == null) {
while (it.hasNext()) {
if (it.next() == null) {
it.remove();
return true;
}
}
} else {
while (it.hasNext()) {
if (o.equals(it.next())) {
it.remove();
return true;
}
}
}
return false;
}
public boolean addAll(Collectionc) {
boolean modified = false;
for (E e : c)
if (add(e))
modified = true;
return modified;
}
//... ...
}

盡管棧和隊列是兩種不同的數據結構,但在實現上卻有許多相同之處。它們都涉及到元素的添加、刪除和訪問。具體來說,棧是一種后進先出(LIFO)的存儲結構,可以通過繼承抽象類AbstractCollection來實現它的基本操作;而隊列是一種先進先出(FIFO)的存儲結構,同樣也可以繼承AbstractCollection類進行實現。