मै मैप एंट्री सेट के लिए प्रत्येक लूप के लिए जावा 7 से जावा 8 तक प्रत्येक लूप के लिए पुराना पारंपरिक रूपांतरित करने की कोशिश कर रहा हूं लेकिन मुझे एक त्रुटि मिल रही है। कोड यह मैं कन्वर्ट करने के लिए कोशिश कर रहा हूँ:मानचित्र प्रविष्टि सेट के लिए प्रत्येक लूप जावा 8
for (Map.Entry<String, String> entry : map.entrySet()) {
System.out.println("Key : " + entry.getKey() + " Value : " + entry.getValue());
}
यहां उन परिवर्तनों मैंने किया है है:
map.forEach(Map.Entry<String, String> entry -> {
System.out.println("Key : " + entry.getKey() + " Value : " + entry.getValue());
});
मैं भी ऐसा करने की कोशिश की:
Map.Entry<String, String> entry;
map.forEach(entry -> {
System.out.println("Key : " + entry.getKey() + " Value : " + entry.getValue());
});
लेकिन अभी भी त्रुटि का सामना करना पड़ । त्रुटि मैं इस के लिए हो रही है है: लैम्ब्डा अभिव्यक्ति के हस्ताक्षर कार्यात्मक इंटरफ़ेस विधि accept(String, String)
ग्रेट के लिए निम्नलिखित कोड का उपयोग कर सकते हैं। अब दोनों काम कर रहे हैं। लेकिन कौन सा बेहतर तरीका है? किस मामले में प्रदर्शन बेहतर होगा? @JBNizet –
दूसरा संस्करण प्रत्येक प्रविष्टि के लिए 'Map.Entry' उदाहरण बनाएगा; पहला आपको कोई तात्कालिकता के साथ कुंजी और मूल्य देता है। इसलिए 'Map.Entry' एक मध्यस्थ है और आप पहले संस्करण का उपयोग करके इससे बच सकते हैं। –
धन्यवाद @MarkoTopolnik मुझे आपका अंक मिला। –