[Java] Collections.emptyList () बनाम नया उदाहरण


Answers

जावा 5.0 से शुरू करने से आप कंटेनर में तत्व का प्रकार निर्दिष्ट कर सकते हैं:

Collections.<Foo>emptyList()

मैं अन्य प्रतिक्रियाओं के साथ सहमत हूं कि उन मामलों के लिए जहां आप रिक्त सूची खाली करना चाहते हैं, खाली होने पर आपको इस दृष्टिकोण का उपयोग करना चाहिए।

Question

व्यावहारिक रूप से, this तरह की एक खाली सूची वापस करना बेहतर है:

return Collections.emptyList();

या this तरह:

return new ArrayList<Foo>();

या यह पूरी तरह निर्भर है कि आप लौटाई गई सूची के साथ क्या करने जा रहे हैं?




Collections.emptyList () का उपयोग करें यदि आप यह सुनिश्चित करना चाहते हैं कि लौटाई गई सूची कभी संशोधित न हो। खाली सूची () पर कॉल करने पर यह वापस किया जाता है:

/**
 * The empty list (immutable). 
 */
public static final List EMPTY_LIST = new EmptyList();



हालांकि ध्यान से रहो। यदि आप Collections.emptyList() वापस कर देंगे और फिर इसके साथ कुछ बदलाव करने की कोशिश करें जैसे कि add() या उस तरह की smth, आपके पास एक UnsupportedOperationException() क्योंकि Collections.emptyList() एक अपरिवर्तनीय वस्तु देता है।




Links