2011-01-22 17 views
15

यदि मैं जावा, में किसी लिंक की गई सूची पर प्रत्येक लूप का उपयोग करता हूं, तो क्या यह गारंटी है कि मैं क्रम में तत्वों पर पुन: प्रयास करूंगा जिसमें वे सूची में दिखाई देते हैं?जावा - एक लिंक्ड सूची को पुन: सक्रिय करना

+3

** हाँ ** यह है .. –

उत्तर

9

लिंक्ड सूची अनुक्रमिक क्रम में कार्य करने की गारंटी है।

documentation

एक से संग्रह (यह भी एक अनुक्रम के रूप में जाना जाता है) का आदेश दिया। इस इंटरफेस के उपयोगकर्ता पर सूची में प्रत्येक तत्व डालने पर सटीक नियंत्रण होता है। उपयोगकर्ता अपने पूर्णांक अनुक्रमणिका (सूची में स्थिति), द्वारा तत्वों तक पहुंच सकते हैं और सूची में तत्वों की खोज कर सकते हैं।

iterator() उचित अनुक्रम में इस सूची में तत्वों पर एक iterator देता है।

0

प्रत्येक java.util.List कार्यान्वयन तो या तो आप ArrayList, LinkedList, वेक्टर, आदि का उपयोग कर रहे उनमें से प्रत्येक के संग्रह का आदेश दिया है और उनमें से प्रत्येक प्रविष्टि के आदेश को बनाए रखने के क्रम बनाए रखने के लिए आवश्यक है (देखें http://download.oracle.com/javase/1.4.2/docs/api/java/util/List.html)

7

लिंक्डलिस्ट की परिभाषा के अनुसार, यह एक अनुक्रम है और आपको तत्वों को क्रम में प्राप्त करने की गारंटी है।

जैसे:

import java.util.LinkedList; 

public class ForEachDemonstrater { 
    public static void main(String args[]) { 
    LinkedList<Character> pl = new LinkedList<Character>(); 
    pl.add('j'); 
    pl.add('a'); 
    pl.add('v'); 
    pl.add('a'); 
    for (char s : pl) 
     System.out.print(s+"->"); 
    } 
} 
18

मैं जावा में एक लिंक्ड सूची से अधिक पुनरावृति करने के लिए 5 मुख्य तरीके (जावा 8 रास्ता सहित) पाया:

  1. लूप लिए
  2. के लिए बढ़ी लूप
  3. जबकि लूप
  4. इटरेटर
  5. संग्रह के धारा() (Java8) util

पाश के लिए

LinkedList<String> linkedList = new LinkedList<>(); 
     System.out.println("==> For Loop Example."); 
     for (int i = 0; i < linkedList.size(); i++) { 
      System.out.println(linkedList.get(i)); 
     } 

पाश के लिए बढ़ी

for (String temp : linkedList) { 
      System.out.println(temp); 
     } 

जबकि पाश

int i = 0; 
     while (i < linkedList.size()) { 
      System.out.println(linkedList.get(i)); 
      i++; 
     } 

इटरेटर

Iterator Iterator = linkedList.iterator(); 
     while (Iterator.hasNext()) { 
      System.out.println(Iterator.next()); 
      } 

संग्रह धारा() util (जावा 8)

linkedList.forEach((temp) -> { 
      System.out.println(temp); 
     }); 
+0

ग्रेट। मुझे 'LinkedList.size()' के बारे में पता नहीं था। +1। – roottraveller

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