2011-01-24 19 views
106

संभावित डुप्लिकेट:
JSON Array iteration in Android/Java
JSONArray with Javaक्या JSONArray के माध्यम से पुनरावृत्त करना संभव है?

क्या यह संभव है इटरेटर का उपयोग कर JSONArray वस्तु के माध्यम से पुनरावृति करने के लिए?

+0

इसे जांचें http://stackoverflow.com/questions/3408985/json-array-iteration-in-android-java – yeradis

उत्तर

201

एक पुनरावर्तक के साथ नहीं।

org.json.JSONArray के लिए, आप कर सकते हैं:

for (int i = 0; i < arr.length(); i++) { 
    arr.getJSONObject(i); 
} 

javax.json.JsonArray के लिए, आप कर सकते हैं:

for (int i = 0; i < arr.size(); i++) { 
    arr.getJsonObject(i); 
} 
+4

क्या यह प्रत्येक पुनरावृत्ति पर arr.length() को कॉल नहीं करेगा? तो शायद इसे वैरिएबल में डालने और लूप में इसका उपयोग करने के लिए बेहतर हो सकता है। – husayt

+0

वैसे हाँ, लेकिन यह हर बार एक ही मूल्य होगा, लेकिन हाँ इसके अनावश्यक चर को बेहतर होना चाहिए। –

+10

कंपाइलर पर निर्भर करता है, साथ ही मेरा मानना ​​है कि यह केवल एक मूल्य प्राप्त करने वाला गेटर होगा जो उदाहरण के बाहर से उत्परिवर्तनीय नहीं है, एक चर सेट करने से बस अधिक मेमोरी आवंटित की जाएगी 8-)। –

3

आप opt(int) विधि का उपयोग करें और एक शास्त्रीय for पाश का उपयोग कर सकते हैं।

संबंधित मुद्दे