2012-04-16 24 views
6

से मूल्य निकालने के लिए मैं एक हैश मैप के काम से सीखने और समझने की कोशिश कर रहा था। तो मैंने कुछ मानों को स्टोर करने के लिए इस हैशैप को बनाया है जो एक इटरेटर का उपयोग करने पर प्रदर्शित करता है मुझे आउटपुटहैश मैप

1=2 
2=3 
3=4 

और इसी तरह के आउटपुट देता है। यह आउटपुट मैं Iterator.next() फ़ंक्शन का उपयोग करके प्राप्त करता हूं। अब मेरा वास्तविक संदेह यह है कि चूंकि इस मान का प्रकार एक इटरेटर ऑब्जेक्ट में लौटाया गया है, अगर मुझे उपरोक्त समानता के दाएं हाथ के मूल्यों को निकालने की आवश्यकता है, तो क्या इसके लिए कोई कार्य है? एक सबस्ट्रिंग की तरह कुछ। क्या कोई तरीका है कि मैं केवल

2 
3 
4 

किसी भी सहायता की सराहना की जा सकती है। अग्रिम में धन्यवाद।

+2

ज्यादातर मामलों में, सीधे इटरेटर के साथ बातचीत करना जरूरी नहीं है। प्रत्येक लॉप के लिए कैसे बनाना है यह देखने के लिए पीटर लॉरी का जवाब देखें। – unholysampler

उत्तर

11

मैं की तरह

Map<Integer, Integer> map = new HashMap<>(); 

for(int value: map.values()) 
    System.out.println(value); 
+0

यह काम किया। बहुत बहुत धन्यवाद। –

3

आप map.values() लिए देख रहे हैं कुछ का प्रयोग करेंगे।

2

मानचित्र में सभी मानों का संग्रह प्राप्त करने के लिए मान() नामक एक विधि है। (दाएं तरफ)

इसी प्रकार, सभी चाबियों का सेट प्राप्त करने के लिए एक विधि कॉल कीसेट() है। (बाएं तरफ)

0

आपको Map#values() विधि की आवश्यकता है जो Collection देता है।

आप सामान्य रूप से इस संग्रह से Iterator प्राप्त कर सकते हैं।

2
import java.util.HashMap; 

public class Test 
{ 
    public static void main(String args[]) 
    { 
     HashMap < Integer , Integer > map = new HashMap < Integer , Integer >(); 

     map.put(1 , 2); 
     map.put(2 , 3); 
     map.put(3 , 4); 

     for (Integer key : map.keySet()) 
     { 
      System.out.println(map.get(key)); 
     } 
    } 
} 
संबंधित मुद्दे