Verovatno ste pomislili po nazivu da ova generička lista predstavlja listu Internet linkova; međutim navedena generička kolekcija je sasvim nešto drugo; samo se zove LinkedList<> i možete je koristiti za kakvu god listu želite. Uglavnom se retko koristi.

Navedena lista u stvari predstavlja povezanu listu u koju se brže dodaju i uklanjaju elementi, određene operacije ne zahtevaju da se cela kolekcija kopira. Međutim, generička kolekcija LinkedList<> je u mnogim situacijama lošijih perfomansi, posebno se teže koriste sa mnogim operacijama i petlja foreach će mnogo brže pročitati generičku kolekciju List<> nego generičku kolekciju LinkedList<> ali recimo da ima neku prednost nad negeneričkom kolekcijom ArrayList.

Ukoliko imate potrebu da često menjate pozicije elemenata u nizu, onda je ova generička klasa odličan izbor.

U sledećem primeru pogledajte kako se ova lista koristi.

using System;
using static System.Console;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace LinkedListGenericCollection
{
class Program
{
static void Main(string[] args)
{
LinkedList<string> students = new LinkedList<string>();

WriteLine("Add some students into the collection of students" + Environment.NewLine);

students.AddLast("Manuel Radovanovic");
students.AddLast("Ella Napolis");
students.AddLast("Martine Moore");

Print(students);

WriteLine("Move the student Ella Napolis before Manuel Radovanovic" + Environment.NewLine);

students.Remove("Ella Napolis");
LinkedListNode<string> node = students.Find("Manuel Radovanovic");
students.AddBefore(node, "Ella Napolis");

Print(students);

WriteLine("Add the student Antoinete Amorros on the first postion of students." + Environment.NewLine);

students.AddFirst("Antoinete Amorros");

Print(students);

WriteLine("Add the student Charles Junger after Antoinete Amorros." + Environment.NewLine);

node = students.Find("Antoinete Amorros");
students.AddAfter(node,"Charles Junger");

Print(students);

WriteLine("Press any key to continue...");
ReadKey();

}

static void Print (LinkedList<string> students)
{
foreach (string student in students)
{
WriteLine(student);

}

WriteLine();
}
}
}

Kad pokrenete navedeni program, rezultat će biti sledeći:

Add some students into the collection of students

Manuel Radovanovic
Ella Napolis
Martine Moore

Move the student Ella Napolis before Manuel Radovanovic

Ella Napolis
Manuel Radovanovic
Martine Moore

Add the student Antoinete Amorros on the first postion of students.

Antoinete Amorros
Ella Napolis
Manuel Radovanovic
Martine Moore

Add the student Charles Junger after Antoinete Amorros.

Antoinete Amorros
Charles Junger
Ella Napolis
Manuel Radovanovic
Martine Moore

Press any key to continue...

Kako navedeni program izgleda možete pogledati i na video-u:


 ( izvor: www.manuelradovanovic.com  )

Za one koji žele da znaju više:

posetite:

Generičke liste u C# programskom jeziku

gde ćete da vidite kako se radi sa:

  • List<>,
  • LinkedList<>,
  • SortedList<TKey, TValue>
  • Dictionary<TKey, TValue>
  • SortedDictionary<TKey, TValue>
  • Queue<>
  • Stack<>
Last modified: Tuesday, 27 October 2020, 5:24 PM