我有一個正在由多個線程工作的堆棧對象。其中一個線程是一個對Stack對象執行彈出操作的工作線程。我想處理堆棧的空的情況下,我看到兩個選項捕捉EmptyStackException與測試是堆棧是空的
try{
Object obj = (Object) d_stackObj.pop();
}
catch (EmptyStackException e)
{ ...}
OR
if(! d_stackObj.empty())
Object obj = (Object) d_stackObj.pop();
else
{ ...}
我的問題是,它的上面是一個更好的辦法,爲什麼?
謝謝!
我不會過分擔心表演 – 2009-07-15 20:25:31