learn use c stringbuilder class
Ovaj vodič detaljno objašnjava klasu C # StringBuilder i njegove metode poput Dodavanja, brisanja, uklanjanja, umetanja, zamjene i jednakih detalja s primjerima:
Klasa StringBuilder u C # radi sa nizom kada je potrebna upotreba opetovanih operacija niza.
Niz je nepromjenjiv, tj. Ne može se mijenjati. Jednom kada se stvori određeni niz, ne može se mijenjati. Svaka promjena ili ažuriranje niza stvorit će novi objekt niza u memoriji. Kao što je očito, ovo ponašanje će otežati izvedbu ako se ponavljajuća operacija izvodi na istom nizu.
=> Ovdje pogledajte temeljne vodiče za obuku za C #
najbolje slušalice za virtualnu stvarnost za xbox one
StringBuilder klasa u C # ima za cilj riješiti ovaj problem. Omogućuje dinamičku dodjelu memorije, tj. Može proširiti broj znakova u nizu. Ne stvara novi memorijski objekt, već dinamički povećava veličinu memorije kako bi sadržavala nove znakove.
Što ćete naučiti:
Kako inicijalizirati C # StringBuilder?
StringBuilder se inicijalizira slično kao i bilo koja druga klasa. Klasa StringBuilder prisutna je u prostoru imena sustava. Tekst treba uvesti u klasu radi instanciranja.
Primjer za inicijalizaciju:
class Program { public static void Main(string() args) { StringBuilder strgBldr = new StringBuilder('Hello'); Console.WriteLine(strgBldr); Console.ReadLine(); } } Rezultat gornjeg programa je:
zdravo
C # StringBuilder metode
Klasa StringBuilder također nudi nekoliko različitih metoda za rad na manipulaciji nizom.
# 1) Dodavanje metode
Kao što sugerira naziv, dodaje niz znakova ili niza na kraju trenutnog String Builder-a. Vrlo je korisno u poboljšanju izvedbe kada je potrebno izvršiti nekoliko spajanja nizova na istom nizu.
Primjer:
class Program { public static void Main(string() args) { StringBuilder strgBldr = new StringBuilder('Hello'); Console.WriteLine(strgBldr); strgBldr.Append('World'); Console.WriteLine(strgBldr); Console.ReadLine(); } }Rezultat gore navedenog programa bit će:
zdravo
Pozdrav svijete
U gornjem programu prvo smo definirali niz putem stringBuilder. Zatim smo koristili Append () za spajanje drugog niza s prethodnim. Ako izvršimo redak koda prije dodavanja, on ima izlaz kao 'Zdravo', ali nakon što ga dodamo i ispišemo rezultat, ispisat će 'Hello World', tj. Prethodni niz s dodanim nizom.
# 2) Jasna metoda
Ova metoda uklanja sve znakove iz trenutnog StringBuilder-a. Vrlo je korisno u scenarijima u kojima trebamo dobiti prazan niz ili u kojima trebamo obrisati podatke iz varijable niza.
Primjer:
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(); } }Rezultat gornjeg programa je:
zdravo
Pozdrav svijete
Kada izvršimo jasnu operaciju na StringBuilderu, a zatim pokušamo ispisati rezultirajući niz. Dobit ćemo vrijednost crnog niza. U gore navedenom programu dodali smo vrijednost u StringBuilder i vrijednost smo ispisali na konzolu.
Zatim smo izveli jasnu operaciju kojom smo uklonili svu vrijednost iz StringBuilder-a, nakon čega je, kada smo pokušali ispisati, ispisati praznu vrijednost.
# 3) Metoda uklanjanja
Ukloni je slično kao Clear, ali s malo razlike. Također uklanja znakove iz StringBuilder-a, ali to čini u zadanom rasponu za razliku od clear koji uklanja sve znakove prisutne u StringBuilder-u. Ukloni se koristi kad god scenarij zahtijeva da program ukloni određeni skup znakova iz niza umjesto cijelog niza.
Primjer:
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(); } }Rezultat gore navedenog programa bit će:
zdravo
Pozdrav svijete
On Svijet
Remove prihvaća dva parametra, prvi označava početni indeks, tj. Indeks znaka odakle želite započeti uklanjanje. Drugi parametar također prihvaća cijeli broj koji označava duljinu, tj. Duljinu znaka iz kojeg želite ukloniti.
U gore navedenom programu dali smo početni indeks kao 2, a duljina kao tri. Dakle, počeo je uklanjati lik iz indeksa 2 tj. He’l’lo, a duljinu smo dali kao tri, tako da je program uklonio tri znaka iz „l“, čime je uklonjen „l l o“.
# 4) Način umetanja
Umetne jedan ili više znakova unutar niza na zadani indeks. Također omogućuje korisniku da odredi koliko će puta niz ili znak biti umetnut u StringBuilder. Koristi se u uvjetima u kojima se znakovi moraju umetnuti u zadani niz na određenom mjestu.
Primjer:
class Program { publicstaticvoid Main(string() args) { StringBuilder strgBldr = new StringBuilder('Hello World'); Console.WriteLine(strgBldr); strgBldr.Insert(2, '_insert_'); Console.WriteLine(strgBldr); Console.ReadLine(); } }Rezultat gore navedenog programa bit će:
Pozdrav svijete
He_insert_llo Svijet
U gornjem programu, metoda Umetanje koristi se za umetanje znakova s određenim indeksom. Metoda umetanja prihvaća dva parametra. Prvi parametar je cijeli broj koji označava indeks u koji se trebaju umetnuti znakovi. Drugi parametar prihvaća znakove koje korisnik želi umetnuti u danom indeksu.
# 5) Zamijenite metodu
Metoda replace zamjenjuje sva pojavljivanja navedenog niza u StringBuilderu nizom ili znakom koji je pružio korisnik. Zamjenjuje određene znakove u određenom indeksu. Može se koristiti u scenarijima u kojima je potrebno zamijeniti neke znakove drugim znakovima.
Primjer:
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(); } }Rezultat gornjeg programa je:
Pozdrav svijete
Bok Svijet
U gore navedenom programu koristili smo metodu Zamijeni kako bismo zamjenili 'Hello' s 'Hi'. Metoda zamjene prihvaća dva parametra, prvi je niz ili znakovi koje želite zamijeniti, a drugi je niz ili znak kojima ga želite zamijeniti.
# 6) Jednaka metoda
Kao što naziv sugerira, potvrđuje je li jedan StringBuilder jednak drugima ili nije. Prihvaća StringBuilder kao parametar i vraća logičku vrijednost na temelju postignutog uvjeta jednakosti. Ova je metoda vrlo korisna ako želite potvrditi uvjet jednakosti za dva StringBuildersa.
Primjer:
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(); } }Rezultat gore navedenog programa bit će:
Lažno
Pravi
U gornjem programu, prvi i treći StringBuilder objekti jednaki su tj. Imaju istu vrijednost. Dakle, kad smo izjednačili prvo s drugim, vratilo je lažnu vrijednost, ali kad smo izjednačili prvo i treće jednako, vratilo je true.
Zaključak
Klasa StringBuilder u C # koristi se za poboljšanje performansi tamo gdje se izvodi više operacija na nizu.
Budući da je nepromjenjiv, kad god se niz modificira, on stvara drugi objekt niza u memoriji. StringBuilder želi to smanjiti.
Omogućuje korisniku da izvrši modifikaciju na istom objektu dodjeljivanjem dinamičke memorije. To znači da može povećati veličinu memorije ako je potrebno za smještaj više podataka.
c ++ generator slučajnih brojeva između dva broja
=> Ovdje pročitajte C # Vodič za početnike
Preporučena literatura
- Vodič za niz stringa C # - Nizne metode s primjerima koda
- Što je usporedno testiranje (naučite na primjerima)
- Vodič za funkcije # C / Metode s primjerima koda
- Java sučelje i udžbenik klase sažetak sa primjerima
- Java niti s metodama i životnim ciklusom
- Funkcije datuma i vremena u C ++ s primjerima
- Razvrstavanje ljuske na C ++ s primjerima
- Lambde u C ++ s primjerima