मैं नीचे के रूप में keySet()
विधि के साथ एक HashMap
से अधिक पाश करने के लिए कोशिश कर रहा हूँ:कीसेट फ़ील्ड रिक्त है
for (String key : bundle.keySet()) {
String value = bundle.get(key);
...
}
मैं का एक बहुत का उपयोग करने के लिए-प्रत्येक मेरी कोड के अन्य भागों में HashMaps पर छोरों, लेकिन एक अजीब व्यवहार के रूप में यह एक: अपने आकार 7 (क्या सामान्य है), लेकिन keySet
, entrySet
और values
null
हैं (ग्रहण डिबगर के अनुसार)!
"समूह" को चर instantiated और आबादी के रूप में (कुछ भी नहीं मूल ...) इस प्रकार है:
Map <String, String> privVar;
Constructor(){
privVar = new HashMap<String, String>();
}
public void add(String key, String value) {
this.privVar.put(key, value);
}
आप के लिए-प्रत्येक HashMaps पर छोरों मुझे लगता है कि आप अपनी संरचना को बदल चाहते हो सकता है एक बहुत कुछ कर रहे हैं। – Macarse
मैं @Macarse से सहमत हूं। इसके अलावा: * यदि * यदि आप एक 'Map' से अधिक लूप करना चाहते हैं और दोनों कुंजी और मूल्यों की जरूरत है, यह आमतौर पर बहुत प्रत्येक कुंजी के लिए' entrySet() 'से बचने के लिए अनावश्यक लुकअप अधिक पाश करने के लिए बेहतर है। –
आपके सुझाव Joachim के लिए धन्यवाद, मैं वह करूँगा। @Macarse: मैं अपने नक्शे की-वैल्यू फ़ाइलें (एक्सेल स्प्रेडशीट) से निकाले गए जोड़ों में मान रखा एक नई स्प्रैडशीट बनाने से पहले वाक्य-नियम (regexp चेक) का एक सेट लागू करने के लिए। क्या आपको लगता है कि नक्शा स्टोर करने के लिए कोई अच्छी वस्तु नहीं है? –