2011-04-24 10 views
6

मेरे पास public int getSize() नामक एक विधि है और यह सूची में आइटमों की संख्या वापस करने का अनुमान है। उदाहरण चर रहा है private Listable[] items; मैंने सोचा था कि यह सिर्फ कुछ इस तरह होगा:सूची में आइटमों की संख्या लौटने

int size = 0; 

for (int i = 0; i < items.length; i++){ 
size++; 
} 

return size; 

लेकिन जब मैंने उसे इन परीक्षणों के माध्यम से चलाने मैं for (int i = 0; i < items.length; i++){ लाइन पर इस NullPointerException

मैं इसे पसंद करती है items.length नहीं लगता कि मिल किसी कारण के लिए। मुझे जावा में कोई त्रुटि नहीं मिल रही है। मुझे यह कैसे करना चाहिए?

मैंने पहले ही वापसी आइटमों की कोशिश की है। लम्बाई;

जो या तो काम नहीं करता था।

+8

परिवर्तनीय आइटम शून्य है। वैसे, आपको लूप की आवश्यकता नहीं है, बस आइटम लौटें। लम्बाई; – MeBigFatGuy

+0

मैंने पहले ही वापसी आइटमों की कोशिश की है। लम्बाई; यह – user695696

उत्तर

2

मेरा मानना ​​है कि आप चर प्रारंभ करने में भूल गया था। की तरह कुछ का प्रयास करें:

items = new Listable[10]; 

अपने getSize() विधि के लिए, तुम सिर्फ items.length

+0

काम नहीं किया हाँ आप इसे दबाया। मैं चर शुरू करने के लिए भूल गया। यह अब काम करता है, धन्यवाद। – user695696

2

जैसा कि MeBigFatGuy ने टिप्पणी की है (+1) आपके आइटम वैरिएबल शून्य है। वास्तव में, उसकी टिप्पणी पूरी तरह से अपने सवाल का जवाब ... यहाँ एक कार्यान्वयन है कि आप क्या चाहते हैं यह करना चाहिए:

public int getSize() { 
    return items == null ? 0 : items.length; 
} 
3

http://www.easywayserver.com/blog/java-how-to-get-size-of-list/

मैं इस लेख देखा जब मैं वेब यह कोड को लागू करने वाली शामिल ढूंढ रहे थे वापस जाने के लिए की जरूरत है list.size() विधि।

List<String> ls=new ArrayList<String>(); 

ls.add("one"); 
ls.add("Three"); 
ls.add("two"); 
ls.add("four"); 

int sizeOfList=ls.size(); 

System.out.println("Size of List :"+sizeOfList); 
संबंधित मुद्दे