2017-02-10 6 views
0

У меня возникают проблемы с попыткой выяснить, как отображать все элементы в LinkedList. Я мог бы решить это, если бы арраист отслеживал индекс каждого элемента, однако я бы хотел решить это без использования массива или массивов.Отображение всех элементов в LinkedList без ListIterator

Ниже то, что я в настоящее время,

public void displayItems() 
    { 
     ArrayList<Node> links = new ArrayList<Node>(); 
     links.add(head); 
     for (int x = 0; x < count; x++) 
     { 
      links.add(links.get(x).getLink()); 
      System.out.println(links.get(x).getData()); 
     } 

есть способ, чтобы отобразить все элементы, в том же способом, как указано выше, но без необходимости массивов или ListIterator?

+0

Как насчет цикла 'while' с условием' thisNode.getLink()! = Null'? – Kayaman

ответ

1

Несколько примеров, как перебрать LinkedList в Java (в том числе один вам не нравится - с помощью итератора):

LinkedList<Node> links = new LinkedList<Node>(); 
links.add(firstNode); 
links.add(secondNode); 
links.add(thirdNode); 

/* For loop */ 
for(int i = 0; i < links.size(); i++) { 
    System.out.println(links.get(i).getLink()); 
} 

/* For-each loop */ 
for(Node node: links) { 
    System.out.println(node.getLink()); 
} 

/* While Loop*/ 
int i = 0; 
while (links.size() > i) { 
    System.out.println(links.get(i++).getLink()); 
} 

/* Iterator */ 
Iterator<Node> it = links.iterator(); 
while (it.hasNext()) { 
    System.out.println(it.next().getLink()); 
} 
+0

Для приведенных выше примеров требуется использование массивов для «ссылок», я пытаюсь найти способ сделать это без использования массивов. –

+0

Нет, вам не нужно использовать массив. Переменная 'links' - LinkedList в приведенном выше примере. – Vaidas

+0

Не является ли LinkedList links = new LinkedList (); " заявление, чтобы объявить arraylist? –

-1

Вы можете использовать целое число в качестве глобальной переменной, при вставке данных в Linked List увеличивайте эту переменную.

Напишите метод в классе LinkedList с положением параметра. Вот петля до позиции, получите данные и верните их.