空的,我們應該更喜歡 示例代碼:最佳方式,如果列表是在Java
List list = new ArrayList();
list.size()==0 or list.isEmpty()
與性能的角度來看。
空的,我們應該更喜歡 示例代碼:最佳方式,如果列表是在Java
List list = new ArrayList();
list.size()==0 or list.isEmpty()
與性能的角度來看。
假設你使用的是ArrayList
坦率地說,它不會有太大的差別。爲什麼?。 isEmpty()
做到這一點:
public boolean isEmpty() {
return size == 0;
}
而且,我覺得可能JIT內聯這個代碼,以便isEmpty()
可能不會花費更多的時間。
不要試圖在如此低的水平上調整性能。它不會有任何noticeale影響,甚至可能導致相同的字節碼取決於編譯器。相反,選擇更具可讀性,自我表達的方法,在這種情況下,它是isEmpty
,因爲它說明了它的功能。
我不認爲我們可以獲得*相同的*字節碼。我的意思是這些方法是'List'接口的一部分。它們被覆蓋。編譯器不能*放置*方法 – TheLostMind
所以,你已經描述了你的代碼,你發現這個方法調用是代碼性能的真正瓶頸?如果沒有,這聽起來像旋轉輪和過早優化。 –
no.it不是那樣的。這只是爲了更好的理解,並且不管誰給我提供了答案的鏈接。 – bajrangi
@abhinaba是的我知道我什麼都不知道,但我知道如何看看java api。它是k..thanx。 – bajrangi