2015-06-02 30 views
-6

空的,我們應該更喜歡 示例代碼:最佳方式,如果列表是在Java

List list = new ArrayList(); 
    list.size()==0 or list.isEmpty() 

與性能的角度來看。

+1

所以,你已經描述了你的代碼,你發現這個方法調用是代碼性能的真正瓶頸?如果沒有,這聽起來像旋轉輪和過早優化。 –

+0

no.it不是那樣的。這只是爲了更好的理解,並且不管誰給我提供了答案的鏈接。 – bajrangi

+0

@abhinaba是的我知道我什麼都不知道,但我知道如何看看java api。它是k..thanx。 – bajrangi

回答

2

假設你使用的是ArrayList

坦率地說,它不會有太大的差別。爲什麼?。 isEmpty()做到這一點:

public boolean isEmpty() { 
     return size == 0; 
    } 

而且,我覺得可能JIT內聯這個代碼,以便isEmpty()可能不會花費更多的時間。

2

不要試圖在如此低的水平上調整性能。它不會有任何noticeale影響,甚至可能導致相同的字節碼取決於編譯器。相反,選擇更具可讀性,自我表達的方法,在這種情況下,它是isEmpty,因爲它說明了它的功能。

+0

我不認爲我們可以獲得*相同的*字節碼。我的意思是這些方法是'List'接口的一部分。它們被覆蓋。編譯器不能*放置*方法 – TheLostMind