Sõnastik on kasulik andmestruktuur, mis võimaldab salvestada võtme-väärtuse paare. Sõnastiku väärtusele saate selle võtme abil tõhusalt juurde pääseda.

C# sõnastikud toetavad selliseid toiminguid nagu väärtuse eemaldamine või kogu väärtuste komplekti itereerimine.

Mis on sõnastik C#-s?

C# sõnaraamat on üks kõige olulisemad andmestruktuurid saate teada. See sarnaneb natuke Java HashMapi andmestruktuuriga. Selle võtmed peavad olema ainulaadsed, kuid need võivad olla peaaegu igat tüüpi. Lihtne sõnastik kasutab skalaarväärtusi.

Näiteks on selle andmestiku võtmeks lemmiklooma ID ja väärtuseks lemmiklooma nimi:

{1001, "Mia"},
{1002, "Oscar"},
{1003, "Birdie"},
{1004, "Bluey"},
{1005, "Leo"},
{1006, "Travis"}

See struktuur võimaldab teil andmetele juurde pääseda, kasutades konkreetset kirjele viitavat võtit. Näiteks saate tuua kirje väärtusega Linnuke viidates sellele otsinguklahviga 1003.

Kuidas sõnaraamatut koostada

Sõnastiku loomiseks peate määrama nii võtme kui ka väärtuse objektitüübi.

  1. Loo sõnastik. Selles näites on võti täisarv ja iga kirje väärtus on string.
    Sõnastik<int, string> lemmikloomad = uus Sõnastik<int, string>();
  2. Peate kasutama Süsteem. Kollektsioonid. Üldine nimeruum, mis sisaldab klassi Sõnaraamat. Veenduge, et teete seda faili ülaosas.
    kasutades Süsteem. Kollektsioonid. Üldine;

Kuidas sõnaraamatusse üksusi lisada

Saate lisada üksusi sõnastikku selle lähtestamise ajal või pärast seda.

  1. Sõnastiku lähtestamise ajal saate üksusi lisada. Selleks lisage algse uue sõnastiku lause järele mõned väärtused lokkis sulgudes.
    Sõnastik<int, string> lemmikloomad = uus Sõnastik<int, string>()
    {
    {1001, "Mia"},
    {1002, "Oscar"},
    {1003, "Birdie"},
    {1004, "Bluey"},
    {1005, "Leo"},
    {1006, "Travis"}
    };
  2. Kui olete sõnastiku juba loonud, saate kasutada sõnastiku sisseehitatud meetodit Add().
    lemmikloomad. Lisama(1007, "Lumine");

Juba olemasolevale võtmele ei saa väärtust lisada. Kui proovite seda teha, saate ArgumentExceptioni.

Te ei saa kasutada a null väärtus sõnaraamatu kirje võtmena. Siiski saate sõnaraamatusse salvestada nullväärtuse.

Kuidas sõnaraamatusse objekte lisada

Kui kasutate oobjektile orienteeritud programmeerimine stiilis, on teil tõenäoliselt vähemalt üks klass, mida kasutate objektide loomiseks. Oletame, et teil oli klass, mis salvestas lemmikloomade kohta üksikasju:

Sellest klassist loodud objekte saab lisada sõnastikku.

  1. Looge sõnaraamat kindlasti väärtuse jaoks määratud lemmikloomaobjektitüübiga.
    Sõnastik<int, Lemmikloom> lemmikloomaobjektid = uus Sõnastik<int, Lemmikloom>();
  2. Looge oma lemmiklooma objekt.
    Lemmikloom mia = uus lemmikloom (1001, "Mia", uus Kuupäev Kellaaeg(2010, 6, 29), 9.0,
    uus Kuupäev Kellaaeg(2022, 05, 02));
  3. Lisage uus lemmiklooma objekt sõnastikku.
    lemmikloomaobjektid. Lisama(1001, mia);

Kuidas pääseda juurde sõnastikus olevale üksusele

Sõnastiku üksusele pääsete juurde klahvi abil.

  1. Kasutage sõnastiku jaoks muutuja nime, millele järgneb nurksulgude ümber olev võti. See tagastab sõnastiku selles konkreetses osas salvestatud objekti.
    var lemmikloom = lemmikloomaobjektid[1001];
    konsool. WriteLine (lemmikloom.nimi);

Kuidas sõnaraamatut korrata

Võite kasutada a igaühele tsükkel sõnastiku kordamiseks:

  1. Kasutage sõnastiku iga võtmeväärtuspaari kordamiseks foreach-i. Eeldades, et helistasite iteraatorile sisenemine, pääsete võtmele ja väärtusele juurde kasutades sisenemine. Võti ja sisenemine. Väärtus.
    igaühele (KeyValuePair<int, Lemmikloom> sissekanne sisse lemmikloomaobjektid)
    {
    // prindi võti
    konsool. WriteLine (sisestus. Võti);

    // prindib selle kirje objekti nime
    konsool. WriteLine (sisestus. Väärtus.nimi);
    }

Kuidas sõnastiku üksust värskendada

Üksust saate värskendada, kirjutades selle väärtuse sõnastikus üle.

  1. Kui teie sõnastikus on lihtsad objektitüübid, saate kirje väärtuse otse üle kirjutada.
    lemmikloomad[1001] = "Maia";
  2. Kui olete sõnastikku objekte lisanud, saate väärtuse üle kirjutada täiesti uuele objektile.
    Lemmikloom jänku = uus lemmikloom (1001, "Jänku", uus Kuupäev Kellaaeg(2021, 8, 1), 3.0, uus Kuupäev Kellaaeg(2021, 8, 4));
    lemmikloomaobjektid[1001] = jänku;
  3. Kui teil on sõnastikus mõni objekt, saate värskendada ka üksikut atribuuti. Saate vara väärtuse otse üle kirjutada või kasutada määrajat.
    lemmikloomaobjektid[1001].name = "Maia";
    // VÕI
    lemmikloomaobjektid[1001].setName("Maia");

Kuidas sõnaraamatust üksust kustutada

Saate valida ühe üksuse või kõik üksused kustutamise.

  1. Üksiku üksuse kustutamiseks kasutage sõnastiku sisseehitatud eemaldamise () meetodit. Sisestage argumendina selle kirje võti, mida soovite kustutada.
    lemmikloomaobjektid. Eemalda(1002);
  2. Sõnastiku kõigi üksuste kustutamiseks kasutage sõnastiku meetodit Built-in Clear().
    lemmikloomaobjektid. Clear();

Andmestruktuurid C# keeles

See õpetus käsitles, kuidas luua C#-s sõnastikku ja kuidas sõnaraamatusse üksusi lisada. Lisaks on selles käsitletud ka sõnastiku värskendamist, kustutamist ja itereerimist.

Kui soovite oma andmestruktuuri sõnavara täiustada, võite alustada täpsemate andmestruktuuride uurimist. Mõned näited nendest on Fibonacci hunnik, AVL Tree või Red Black Tree.

3 täpsemat andmestruktuuri, mida iga programmeerija peaks teadma

Loe edasi

JagaSäutsJagaMeil

Seotud teemad

  • Programmeerimine
  • Sõnastik
  • Programmeerimine

Autori kohta

Sharlene Von Drehnen (14 avaldatud artiklit)

Sharlene on MUO tehniline kirjanik ja töötab täiskohaga ka tarkvaraarendusega. Tal on IT bakalaureusekraad ning varasem kogemus kvaliteedi tagamise ja ülikooli juhendamise alal. Sharlene armastab mängida ja klaverit mängida.

Veel Sharlene Von Drehnenilt

Liituge meie uudiskirjaga

Liituge meie uudiskirjaga tehniliste näpunäidete, arvustuste, tasuta e-raamatute ja eksklusiivsete pakkumiste saamiseks!

Tellimiseks klõpsake siin