learn use c stringbuilder class
Tento výukový program podrobne vysvetľuje triedu C # StringBuilder a jej metódy, ako je pripájanie, mazanie, odstraňovanie, vkladanie, nahrádzanie a rovnaké nastavenie s príkladmi:
Trieda StringBuilder v C # pracuje s reťazcom, keď sa vyžaduje použitie opakovaných operácií s reťazcom.
Reťazec je nemenný, to znamená, že sa nedá zmeniť. Po vytvorení určitého reťazca ho nie je možné zmeniť. Akákoľvek zmena alebo aktualizácia reťazca vytvorí v pamäti nový objekt reťazca. Ako je zrejmé, toto správanie bude brzdiť výkon, ak sa opakujúca operácia vykonáva na rovnakom reťazci.
=> Vyskúšajte tu podrobné výukové návody C #
Cieľom triedy StringBuilder v C # je vyriešiť tento problém. Umožňuje dynamické pridelenie pamäte, t. J. Môže rozšíriť počet znakov v reťazci. Nevytvára nový pamäťový objekt, skôr dynamicky zväčšuje veľkosť pamäte tak, aby obsahovala nové znaky.
Čo sa dozviete:
Ako inicializovať C # StringBuilder?
StringBuilder je inicializovaný podobne ako ktorákoľvek iná trieda. V mennom priestore System je prítomná trieda StringBuilder. Pre inštanciu je potrebné text do triedy importovať.
Príklad pre inicializáciu:
class Program { public static void Main(string() args) { StringBuilder strgBldr = new StringBuilder('Hello'); Console.WriteLine(strgBldr); Console.ReadLine(); } }
Výstupom vyššie uvedeného programu je:
Ahoj
Metódy C # StringBuilder
Trieda StringBuilder tiež ponúka niekoľko rôznych metód na prácu s manipuláciou s reťazcami.
# 1) Pripojte metódu
Ako naznačuje názov, na konci aktuálneho nástroja na tvorbu reťazcov pridáva sadu znakov alebo reťazcov. Je veľmi užitočné pri zlepšovaní výkonu, keď sa na rovnakom reťazci vyžaduje vykonanie viacerých reťazcov.
Príklad:
class Program { public static void Main(string() args) { StringBuilder strgBldr = new StringBuilder('Hello'); Console.WriteLine(strgBldr); strgBldr.Append('World'); Console.WriteLine(strgBldr); Console.ReadLine(); } }
Výstupom vyššie uvedeného programu bude:
Ahoj
Ahoj svet
Vo vyššie uvedenom programe sme najskôr mali reťazec definovaný cez stringBuilder. Potom sme pomocou funkcie Append () spojili ďalší reťazec s predchádzajúcim. Ak vykonáme kódový riadok pred pripojením, bude mať výstup ako „Hello“, ale akonáhle ho pripojíme a vytlačíme výsledok, vytlačí sa „Hello World“, tj predchádzajúci reťazec s pripojeným reťazcom.
# 2) Čistá metóda
Táto metóda odstráni všetky znaky z aktuálneho StringBuilder. Je to veľmi užitočné v scenároch, keď potrebujeme získať prázdny reťazec alebo keď musíme vyčistiť údaje z premennej reťazca.
Príklad:
aký je najlepší kompilátor c ++
class Program { public static void Main(string() args) { StringBuilder strgBldr = new StringBuilder('Hello'); Console.WriteLine(strgBldr); strgBldr.Append('World'); Console.WriteLine(strgBldr); strgBldr.Clear(); Console.WriteLine(strgBldr); Console.ReadLine(); } }
Výstupom vyššie uvedeného programu je:
Ahoj
Ahoj svet
Keď vykonáme jasnú operáciu na StringBuilder a potom sa pokúsime vytlačiť výsledný reťazec. Získame hodnotu čierneho reťazca. Vo vyššie uvedenom programe sme pridali hodnotu do StringBuilder a hodnotu sme vytlačili do konzoly.
Potom sme vykonali jasnú operáciu, ktorá odstránila všetku hodnotu z StringBuilder, potom, keď sme sa pokúsili tlačiť, vytlačila prázdnu hodnotu.
# 3) Odstráňte metódu
Odstrániť je podobné ako jasné, ale s malým rozdielom. Odstráni tiež znaky zo StringBuilder, ale urobí to v danom rozsahu, na rozdiel od príkazu clear, ktorý odstráni všetky znaky prítomné v StringBuilder. Odstrániť sa používa vždy, keď scenár vyžaduje, aby program odstránil z reťazca určitú sadu znakov namiesto celého reťazca.
Príklad:
class Program { public static void Main(string() args) { StringBuilder strgBldr = new StringBuilder('Hello'); Console.WriteLine(strgBldr); strgBldr.Append('World'); Console.WriteLine(strgBldr); strgBldr.Remove(2, 3); Console.WriteLine(strgBldr); Console.ReadLine(); } }
Výstupom vyššie uvedeného programu bude:
Ahoj
Ahoj svet
On svet
Odstrániť akceptuje dva parametre, prvý označuje počiatočný index, tj index znaku, z ktorého chcete začať odstraňovať. Druhý parameter tiež akceptuje celé číslo, ktoré označuje dĺžku, t. J. Dĺžku znaku, z ktorého chcete odstrániť.
Vo vyššie uvedenom programe sme poskytli počiatočný index ako 2 a dĺžku ako tri. Začalo to teda odstraňovať znak z indexu 2, t. J. He’l’lo, a dĺžku sme dali ako tri, takže program odstránil tri znaky z „l“, takže „l l o“ bolo odstránené.
# 4) Metóda vloženia
Vloží jeden alebo viac znakov do reťazca v danom indexe. Tiež umožňuje užívateľovi určiť počet opakovaní reťazca alebo znaku, ktoré sa majú vložiť do StringBuilder. Používa sa v podmienkach, keď sa vyžaduje vloženie znakov do daného reťazca na konkrétnom mieste.
Príklad:
class Program { publicstaticvoid Main(string() args) { StringBuilder strgBldr = new StringBuilder('Hello World'); Console.WriteLine(strgBldr); strgBldr.Insert(2, '_insert_'); Console.WriteLine(strgBldr); Console.ReadLine(); } }
Výstupom vyššie uvedeného programu bude:
Ahoj svet
He_insert_llo Svet
Vo vyššie uvedenom programe sa na vloženie znakov do určitého indexu používa metóda Insert. Metóda vloženia akceptuje dva parametre. Prvý parameter je celé číslo, ktoré označuje index, do ktorého sa majú vkladať znaky. Druhý parameter prijíma znaky, ktoré chce používateľ vložiť pri danom indexe.
# 5) Vymeňte metódu
Metóda replace nahradí všetky výskyty zadaného reťazca v StringBuilder reťazcom alebo znakom poskytnutým používateľom. Nahrádza konkrétne znaky pri konkrétnom indexe. Môže sa použiť v scenároch, kde sa vyžaduje nahradenie niektorých znakov iným znakom.
Príklad:
class Program { public static void Main(string() args) { StringBuilder strgBldr = new StringBuilder('Hello World'); Console.WriteLine(strgBldr); strgBldr.Replace('Hello', 'Hi'); Console.WriteLine(strgBldr); Console.ReadLine(); } }
Výstupom vyššie uvedeného programu je:
Ahoj svet
Ahoj svet
Vo vyššie uvedenom programe sme pomocou metódy Replace nahradili „Hello“ výrazom „Hi“. Metóda replace akceptuje dva parametre, prvý je reťazec alebo znaky, ktoré chcete nahradiť, a druhý reťazec alebo znak, ktorým ich chcete nahradiť.
# 6) Rovná sa metóda
Ako naznačuje názov, overuje sa, či je jeden StringBuilder rovnocenný s ostatnými alebo nie. Prijíma StringBuilder ako parameter a vracia boolovskú hodnotu na základe dosiahnutej podmienky rovnosti. Táto metóda je celkom užitočná, ak chcete overiť podmienku rovnosti pre dva StringBuilders.
Príklad:
class Program { public static void Main(string() args) { StringBuilder strgBldr1 = new StringBuilder('Hello World'); StringBuilder strgBldr2 = new StringBuilder('World'); StringBuilder strgBldr3 = new StringBuilder('Hello World'); Console.WriteLine(strgBldr1.Equals(strgBldr2)); Console.WriteLine(strgBldr1.Equals(strgBldr3)); Console.ReadLine(); } }
Výstupom vyššie uvedeného programu bude:
Falošné
Pravdaže
Vo vyššie uvedenom programe sú prvý a tretí objekt StringBuilder rovnaké, t. J. Majú rovnakú hodnotu. Preto, keď sme sa rovnali ako prví s druhou, vrátili sme falošnú hodnotu, ale keď sme dali rovnicu medzi prvou a treťou rovnou, vrátila sa pravda.
Záver
Trieda StringBuilder v C # sa používa na zlepšenie výkonu tam, kde sa vykonáva viac operácií s reťazcom.
Keďže je nemenný, pri každej úprave reťazca vytvorí v pamäti ďalší objekt reťazca. Cieľom StringBuilder je to znížiť.
Umožňuje užívateľovi vykonať úpravy na rovnakom objekte pridelením dynamickej pamäte. To znamená, že v prípade potreby môže zvýšiť veľkosť pamäte, aby sa do nej zmestilo viac údajov.
=> Prečítajte si C # Sprievodcu pre začiatočníkov tu
Odporúčané čítanie
- C # String Tutorial - Metódy reťazcov s príkladmi kódu
- Čo je to porovnávacie testovanie (ďalšie informácie)
- Výukový program pre funkcie / metódy C # s príkladmi kódu
- Výukový program pre rozhranie Java a abstraktnú triedu s príkladmi
- Vlákna Java s metódami a životným cyklom
- Funkcie dátumu a času v C ++ s príkladmi
- Shell zoradený v C ++ s príkladmi
- Lambdas v C ++ s príkladmi