learn use c stringbuilder class
Tento výukový program podrobně vysvětluje třídu C # StringBuilder a její metody jako Připojit, Vymazat, Odebrat, Vložit, Nahradit a Vyrovnat se s příklady:
Třída StringBuilder v C # pracuje s řetězcem, když je vyžadováno použití opakovaných řetězcových operací.
Řetězec je neměnný, tj. Nelze jej změnit. Jakmile je určitý řetězec vytvořen, nelze jej změnit. Jakákoli změna nebo aktualizace řetězce vytvoří v paměti nový objekt řetězce. Jak je zřejmé, toto chování bude omezovat výkon, pokud se opakující operace provádí na stejném řetězci.
=> Podívejte se na podrobné návody C # pro školení zde
Cílem třídy StringBuilder v C # je vyřešit tento problém. Umožňuje dynamické přidělení paměti, tj. Může rozšířit počet znaků v řetězci. Nevytváří nový paměťový objekt, ale dynamicky zvětšuje velikost paměti tak, aby obsahovala nové znaky.
Co se naučíte:
otázky týkající se kódování java při psaní kódu
Jak inicializovat C # StringBuilder?
StringBuilder je inicializován podobně jako u jakékoli jiné třídy. Třída StringBuilder je přítomna v oboru názvů systému. Text je třeba pro vytvoření instance importovat do třídy.
Příklad pro inicializaci:
class Program { public static void Main(string() args) { StringBuilder strgBldr = new StringBuilder('Hello'); Console.WriteLine(strgBldr); Console.ReadLine(); } }
Výstupem výše uvedeného programu je:
Ahoj
Metody C # StringBuilder
Třída StringBuilder také nabízí několik různých metod pro práci s manipulací s řetězci.
# 1) Připojit metodu
Jak naznačuje název, připojí sadu znaků nebo řetězce na konec aktuálního String Builderu. Je velmi užitečné při zlepšování výkonu, když je třeba provést několik řetězcových zřetězení na stejném řetězci.
Pří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ýstupem výše uvedeného programu bude:
Ahoj
Ahoj světe
Ve výše uvedeném programu jsme nejprve měli řetězec definovaný pomocí stringBuilder. Potom jsme použili Append () ke zřetězení dalšího řetězce s předchozím. Pokud provedeme kódový řádek před připojením, má výstup jako „Hello“, ale jakmile jej připojíme a vytiskneme výsledek, vytiskne „Hello World“, tj. Předchozí řetězec s připojeným řetězcem.
# 2) Vymazat metodu
Tato metoda odstraní všechny znaky z aktuálního StringBuilder. Je to velmi užitečné ve scénářích, kdy potřebujeme získat prázdný řetězec nebo kde musíme vymazat data z řetězcové proměnné.
Příklad:
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ýstupem výše uvedeného programu je:
Ahoj
Ahoj světe
Když provedeme jasnou operaci na StringBuilder a poté se pokusíme vytisknout výsledný řetězec. Získáme hodnotu černého řetězce. Ve výše uvedeném programu jsme přidali hodnotu do StringBuilder a hodnotu jsme vytiskli do konzoly.
Poté jsme provedli jasnou operaci, která odstranila veškerou hodnotu ze StringBuilder poté, co jsme se pokusili o tisk, vytiskla prázdnou hodnotu.
# 3) Odebrat metodu
Odstranit je podobné jako jasné, ale s malým rozdílem. Odebere také znaky z StringBuilder, ale dělá to v daném rozsahu, na rozdíl od clear, který odstraní všechny znaky přítomné v StringBuilder. Odebrat se používá vždy, když scénář vyžaduje, aby program odstranil určitou sadu znaků z řetězce namísto celého řetězce.
Příklad:
co je dobrá aplikace pro stahování mp3 pro Android
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ýstupem výše uvedeného programu bude:
Ahoj
Ahoj světe
Svět
Odebrat přijímá dva parametry, první označuje počáteční index, tj. Index znaku, ze kterého chcete začít odstraňovat. Druhý parametr také přijímá celé číslo, které označuje délku, tj. Délku znaku, ze kterého chcete odebrat.
Ve výše uvedeném programu jsme poskytli počáteční index jako 2 a délku jako tři. Začalo to tedy odstraňovat znak z indexu 2, tj. He’l’lo, a délku jsme dali jako tři, takže program odstranil tři znaky z „l“, takže „l l o“ bylo odstraněno.
# 4) Vložte metodu
Vloží jeden nebo více znaků do řetězce v daném indexu. Také umožňuje uživateli určit, kolikrát má být řetězec nebo znak vložen do StringBuilder. Používá se v podmínkách, kdy je vyžadováno vložení znaků do daného řetězce na konkrétní pozici.
Pří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ýstupem výše uvedeného programu bude:
Ahoj světe
He_insert_llo Svět
Ve výše uvedeném programu se metoda Insert používá k vložení znaků do určitého indexu. Metoda vložení přijímá dva parametry. První parametr je celé číslo, které označuje index, kam mají být znaky vloženy. Druhý parametr přijímá znaky, které chce uživatel vložit v daném indexu.
# 5) Vyměňte metodu
Metoda replace nahradí všechny výskyty zadaného řetězce v StringBuilder řetězcem nebo znakem poskytnutým uživatelem. Nahrazuje konkrétní znaky u konkrétního indexu. Lze jej použít ve scénářích, kdy je nutné nahradit některé znaky jiným znakem.
Pří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ýstupem výše uvedeného programu je:
Ahoj světe
Ahoj světe
Ve výše uvedeném programu jsme použili metodu Replace k nahrazení „Hello“ výrazem „Hi“. Metoda replace přijímá dva parametry, první je řetězec nebo znaky, které chcete nahradit, a druhý je řetězec nebo znak, kterým jej chcete nahradit.
# 6) Rovná se metoda
Jak název napovídá, ověřuje se, zda je jeden StringBuilder stejný jako ostatní nebo ne. Přijímá StringBuilder jako parametr a vrací logickou hodnotu na základě dosažené podmínky rovnosti. Tato metoda je docela užitečná, pokud chcete ověřit podmínku rovnosti pro dva StringBuilders.
Pří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ýstupem výše uvedeného programu bude:
Nepravdivé
Skutečný
Ve výše uvedeném programu jsou první a třetí objekty StringBuilder stejné, tj. Mají stejnou hodnotu. Proto, když jsme se rovnali jako první s druhou, vrátili falešnou hodnotu, ale když jsme se rovnali první a třetí rovní, vrátila se pravda.
Závěr
Třída StringBuilder v C # se používá ke zlepšení výkonu, kde se provádí více operací na řetězci.
Být neměnný, kdykoli je řetězec změněn, vytvoří v paměti další objekt řetězce. Cílem StringBuilder je to snížit.
Umožňuje uživateli provádět úpravy na stejném objektu přidělením dynamické paměti. To znamená, že může v případě potřeby zvětšit velikost paměti, aby pojala více dat.
jak spustit soubor jar v systému Windows 10
=> Přečtěte si C # průvodce pro začátečníky zde
Doporučené čtení
- C # String Tutorial - Metody řetězců s příklady kódu
- Co je srovnávací testování (naučit se s příklady)
- Výukový program pro funkce / metody C # s příklady kódu
- Výukový program pro rozhraní Java a abstraktní třídu s příklady
- Java vlákna s metodami a životním cyklem
- Funkce data a času v C ++ s příklady
- Shell Seřadit v C ++ s příklady
- Lambdas v C ++ s příklady