Речник је корисна структура података која вам омогућава да чувате парове кључ-вредност. Можете ефикасно приступити вредности из речника користећи њен кључ.

Речници у Ц# подржавају радње као што су уклањање вредности или понављање преко целог скупа вредности.

Шта је речник у Ц#?

Ц# речник је један од најважније структуре података можете научити о. Помало личи на структуру података Јава ХасхМап. Његови кључеви морају бити јединствени, али могу бити готово било које врсте. Једноставан речник користи скаларне вредности.

На пример, овај скуп података има ИД љубимца као кључ и име љубимца као вредност:

{1001, "Миа"},
{1002, "Оскар"},
{1003, "Птичица"},
{1004, "плаво"},
{1005, "Лав"},
{1006, "Травис"}

Ова структура вам омогућава да приступите подацима користећи одређени кључ који упућује на запис. На пример, можете да преузмете запис са вредношћу Бирдие упућивањем на њега помоћу кључа за тражење 1003.

Како направити речник

Да бисте креирали речник, потребно је да наведете тип објекта и за кључ и за вредност.

instagram viewer
  1. Направите речник. У овом примеру, кључ је цео број, а вредност за сваки запис је низ.
    Речник<инт, низ> кућни љубимци = Нова Речник<инт, низ>();
  2. Мораћете да користите Систем. Збирке. Општи именски простор који садржи класу Речник. Уверите се да то радите на врху своје датотеке:
    Користећи Систем. Збирке. Општи;

Како додати ставке у речник

Можете додати ставке у речник током или након његове иницијализације.

  1. Можете да додајете ставке док иницијализујете речник. Да бисте то урадили, додајте неке вредности у витичасте заграде после почетног новог израза Речник.
    Речник<инт, низ> кућни љубимци = Нова Речник<инт, низ>()
    {
    {1001, "Миа"},
    {1002, "Оскар"},
    {1003, "Птичица"},
    {1004, "плаво"},
    {1005, "Лав"},
    {1006, "Травис"}
    };
  2. Ако сте већ креирали речник, можете користити уграђени метод Адд() у речник.
    Кућни љубимци. Додати(1007, "Снежно");

Не можете додати вредност за кључ који већ постоји. Ако то покушате да урадите, добићете АргументЕкцептион.

Не можете користити а нула вредност као кључ за унос у речнику. Међутим, можете да сачувате нулту вредност у речнику.

Како додати објекте у речник

Ако користите ообјектно оријентисано програмирање стиле, вероватно имате бар једну класу коју користите за креирање објеката. Рецимо да сте имали разред који чува детаље о кућним љубимцима:

Можете додати објекте креиране из ове класе у речник.

  1. Уверите се да сте направили речник са типом објекта Пет који је наведен за вредност.
    Речник<инт, Пет> петОбјецтс = Нова Речник<инт, Пет>();
  2. Направите објекат свог љубимца.
    Пет миа = Нова Кућни љубимац(1001, "Миа", Нова Датум време(2010, 6, 29), 9.0,
    Нова Датум време(2022, 05, 02));
  3. Додајте нови објекат кућног љубимца у речник.
    петОбјецтс. Додати(1001, миа);

Како приступити ставку у речнику

Можете приступити ставци у речнику помоћу тастера.

  1. Користите име променљиве за речник, након чега следи тастер око пара угластих заграда. Ово ће вратити објекат сачуван у том одређеном делу речника.
    вар љубимац = кућни љубимци[1001];
    Конзола. ВритеЛине (име љубимца);

Како се понављати преко речника

Можете користити а за сваки петља за итерацију преко речника:

  1. Користите фореацх да бисте итерирали сваки КеиВалуеПаир у речнику. Под претпоставком да сте позвали свог итератора улазак, можете приступити кључу и вредности користећи улазак. Кључ и улазак. Валуе.
    за сваки (КеиВалуеПаир<инт, Пет> унос ин кућни љубимци)
    {
    // штампа кључ
    Конзола. ВритеЛине (унос. Кључ);

    // штампа име објекта за тај запис
    Конзола. ВритеЛине (унос. Валуе.наме);
    }

Како ажурирати ставку у речнику

Можете ажурирати ставку тако што ћете преписати њену вредност у речник.

  1. Ако имате једноставне типове објеката у свом речнику, можете директно преписати вредност записа.
    Кућни љубимци[1001] = "Маја";
  2. Ако сте додали објекте у ваш речник, можете преписати вредност у потпуно нови објекат.
    Кућни љубимац = Нова Кућни љубимац(1001, "зеко", Нова Датум време(2021, 8, 1), 3.0, Нова Датум време(2021, 8, 4));
    кућни љубимци[1001] = зека;
  3. Ако имате објекат у речнику, можете ажурирати и једно својство. Можете да препишете вредност својства директно или да користите подешавач.
    кућни љубимци[1001].наме = "Маја";
    // ОР
    кућни љубимци[1001].сетНаме("Маиа");

Како избрисати ставку у речнику

Можете изабрати да избришете једну или све ставке.

  1. Да бисте избрисали једну ставку, користите Речник уграђену методу Ремове(). Унесите кључ записа који желите да избришете као аргумент.
    петОбјецтс. Уклони (1002);
  2. Да бисте избрисали све ставке у речнику, користите речничку уграђену методу Цлеар().
    петОбјецтс. Јасно();

Структуре података у Ц#

Овај водич је покрио како да направите речник у Ц# и како да додате ставке у речник. Поред тога, такође је покрио како ажурирати, брисати и понављати речник.

Ако желите да побољшате свој речник структуре података, можете почети да истражујете напредније структуре података. Неки од њих укључују Фибоначијеву хрпу, АВЛ дрво или црвено црно дрво.

3 напредне структуре података које сваки програмер треба да зна

Реад Нект

ОбјавиТвеетОбјавиЕмаил

Повезане теме

  • Програмирање
  • Речник
  • Програмирање

О аутору

Схарлене Вон Дрехнен (Објављено 14 чланака)

Шарлин је технички писац у МУО и такође ради пуно радно време у развоју софтвера. Она је дипломирани информатичар и има претходно искуство у области обезбеђења квалитета и универзитетског туторства. Шарлин воли игре и свира клавир.

Више од Схарлене Вон Дрехнен

Претплатите се на наш билтен

Придружите се нашем билтену за техничке савете, рецензије, бесплатне е-књиге и ексклузивне понуде!

Кликните овде да бисте се претплатили