Skip to content

Листа

Класа List<T> представља генеричку класу дефинисану у именском простору System.Collection.Generic. Предности листе у односу на низ је су што постоје методе помоћу којих је могуће листу проширити, смањити, обрнути, претражити, сортирати и сл. Елементима листе приступамо преко индекса (као и код низова). Креирање листе и рад са методама листе List<T> демонстрираћемо у следећем примеру:

using System;
using System.Collections.Generic;

class RadSaListom
{
    static void Main(string[] args)
    {
        // Креирај листу "ucenici"
        List<string> ucenici = new List<string>();
        
        // Додај шест елемената у листу
        ucenici.Add("Ucenik 1");
        ucenici.Add("Ucenik 2");
        ucenici.Add("Ucenik 3");
        ucenici.Add("Ucenik 4");
        ucenici.Add("Ucenik 5");
        ucenici.Add("Ucenik 6");

        // Испиши све елементе из листе
        foreach (var ucenik in ucenici)
            Console.WriteLine(ucenik);

        // Обрни редослед елемената листе и испиши листу
        ucenici.Reverse();
        foreach (var ucenik in ucenici)
            Console.WriteLine(ucenik);

        // Обрни редослед прва три елемента листе и испиши листу
        // (од елемента са индексом 0, три елемента)
        ucenici.Reverse(0, 3);
        foreach (var ucenik in ucenici)
            Console.WriteLine(ucenik);

        // Убаци елемент "Ucenik X" између елемената "Ucenik 3" и "Ucenik 4"
        // и испиши листу ("Ucenik X" треба да добије индекс 3)
        ucenici.Insert(3, "Ucenik X");
        foreach (var ucenik in ucenici)
            Console.WriteLine(ucenik);

        // Сортирај елементе листе и испиши листу
        ucenici.Sort();
        foreach (var ucenik in ucenici)
            Console.WriteLine(ucenik);

        // Да ли се у листи налази елемент "Ucenik 3"?
        if(ucenici.Contains("Ucenik 3"))
            Console.WriteLine("U redu se nalazi Ucenik 3");
        else
            Console.WriteLine("U redu se ne nalazi Ucenik 3");

        // Креирај подлисту "prvaGrupa" у којој се налазе прва три елемента листе
        // (од елемента са индексом 0, три елемента)
        List<string> prvaGrupa = ucenici.GetRange(0, 3);
        foreach (var ucenik in prvaGrupa)
            Console.WriteLine(ucenik);

        // Копирај елементе листе у низ "nizUcenika" и испиши га
        string[] nizUcenika = ucenici.ToArray();
        foreach (var ucenik in nizUcenika)
            Console.WriteLine(ucenik);

        // Обриши све елементе из листе
        ucenici.Clear();
    }
}
  • Методом Add() додајемо елемент у листу
  • Методом Reverse() обрћемо редослед елемената у листи
  • Методом Insert() умећемо елемент у листу
  • Методом Sort() сортирамо листу
  • Методом Contains() проверавамо да ли се одређени елемент налази на стеку
  • Методом GetRange() узоркујемо одређени опсег елемената из листе
  • Методом ToArray() копирамо елементе листе у низ
  • Методом Clear() бришемо све елементе из листе

Више о класи List<T>, њеним својствима и методама прочитајте у званичној документацији:
https://docs.microsoft.com/en-us/dotnet/api/system.collections.generic.list-1?view=netframework-4.0