c convert string int using parse
Vodič o tome kako pretvoriti niz u Int u C #. Naučit ćete više metoda pretvorbe poput Parse, TryParse & Convert na temelju zahtjeva:
Većina nas je povremeno bila u ovoj situaciji kada String moramo pretvoriti u cjelobrojni tip podataka.
Na primjer, recimo da primam niz '99' iz izvora podataka (iz baze podataka, korisničkog unosa itd.), ali potreban nam je kao cijeli broj da bismo izvršili neke izračune, ovdje ćemo ga prvo morati pretvoriti u cijeli broj prije nego što započnemo neke aritmetičke radnje.
Postoji nekoliko načina za to, a pogledajmo nekoliko široko korištenih metoda.
=> Ovdje pogledajte cijelu seriju C # treninga
Što ćete naučiti:
- Int.Parse metoda
- System.Convert metoda
- metoda int.TryParse
- Pretvaranje nebrojevnog niza u cijeli broj
- Zaključak
- Preporučena literatura
Int.Parse metoda
Int.Parse metoda djeluje poput čuda ako ste sigurni da vaša konverzija nikada neće dovesti do pogreške. Ovo je jedan od najlakših i najjednostavnijih načina pretvaranja niza u cijeli broj. Može pretpostaviti pogrešku ako pretvorba nije uspješna.
Ova se metoda uglavnom koristi kada imate cijeli broj u obliku niza. Na primjer, dobivate numerički niz od korisničkog unosa poput '99'. Pokušajmo s jednostavnim programom za pretvaranje ovog niza u cijeli broj.
Program
program javne klase
{ public static void Main() { String str = '99'; int number = int.Parse(str); Console.WriteLine(number); } }
Izlaz
Rezultat gore navedenog programa:
python pitanja i odgovori za testere
99
Obrazloženje
Program će vratiti numeričku vrijednost niza.
Lukavi dio upotrebe metode int.Parse predstavlja problem izbacivanja pogreške ako niz nije u ispravnom formatu, tj. Ako niz sadrži bilo koji znak osim brojeva.
Ako je prisutan bilo koji znak osim broja, tada će ova metoda izbaciti sljedeću pogrešku:
“(System.FormatException: Input string was not in a correct format.)”
System.Convert metoda
Drugi način pretvaranja niza u cijeli broj je pomoću metode Pretvori. Ova metoda nije tako jednostavna kao prethodna metoda, jer moramo biti spremni riješiti svaku iznimku koja se može dogoditi zbog interakcije programa s pogrešnim podacima.
Iznimke također mogu potrošiti puno memorije, stoga nije preporučljivo naići na bilo kakvu traženu ili neželjenu iznimku tijekom tijeka izvršavanja. Na primjer, ako se u petlji dogodi iznimka, tada će se za bacanje utrošiti puno memorije, što će usporiti vaš program.
Upotreba metode Pretvori vrlo je korisna ako želite znati razlog neuspjeha raščlanjivanja. Može uhvatiti iznimku i prikazati detalje kvara.
Program
public class Program { public static String intString = '123'; public static void Main(string() args) { int i = 0; try { i = System.Convert.ToInt32(intString); } catch (Exception e) { } Console.WriteLine('The converted int is : '+i); } }
Izlaz
'Pretvoreni int je: 123'
Obrazloženje
U gore navedenom programu koristili smo metodu convert za pretvorbu niza u cijeli broj. Ovdje je ako je varijabla String numerička, tada će se pretvoriti u cijeli broj, ali u slučaju pogrešnog niza i izbacit će iznimku kojom će rukovati blok catch.
metoda int.TryParse
Jedan od najčešćih načina raščlanjivanja predstavljanja niza u 32-bitni cijeli broj je metoda TryParse. Ova metoda ne uzima u obzir prazan prostor prije ili poslije niza, ali svi ostali znakovni znakovi trebaju biti odgovarajućeg numeričkog tipa kako bi se olakšala konverzija.
Na primjer, bilo koji razmak, abeceda ili poseban znak unutar varijable može uzrokovati pogrešku.
Metoda TryParse prihvaća dva parametra, prvi je niz koji korisnik želi pretvoriti, a drugi parametar je ključna riječ 'out', a zatim varijabla u koju želite pohraniti vrijednost. Vratit će vrijednost koja se temelji na uspjehu ili neuspjehu pretvorbe.
TryParse(String, out var)
Pogledajmo jednostavan program za pretvaranje numeričkog niza u cijeli broj.
Program
class Program { static void Main(string() args) { try { string value = '999'; int numeric; bool isTrue = int.TryParse(value, out numeric); if (isTrue) { Console.WriteLine('The Integer value is ' + numeric); } } catch (FormatException e) { Console.WriteLine(e.Message); } } }
Izlaz
Vrijednost cijelog broja je 999
Obrazloženje
U gore navedenom programu koristili smo 'TryParse' za pretvorbu numeričkog niza u cijeli broj. Prvo smo definirali varijablu niza koju moramo pretvoriti. Zatim smo inicijalizirali drugu varijablu 'numeričku' tipa integer. Tada smo koristili logičku varijablu za pohranu povratne vrijednosti pokušaja raščlanjivanja.
Ako vrati true, to znači da je niz uspješno pretvoren u cijeli broj. Ako vrati false, tada postoji problem s ulaznim nizom. Čitav programski isječak okružili smo unutar bloka try-catch kako bismo obradili bilo kakvu iznimku koja se može dogoditi.
Pretvaranje nebrojevnog niza u cijeli broj
U svim gore navedenim programima pokušali smo pretvoriti numeričku vrijednost niza u cijeli broj, ali u scenariju iz stvarnog svijeta većinu vremena moramo obrađivati nizove koji sadrže posebne znakove, abecede zajedno s brojevima. Ako želimo dobiti samo brojčanu vrijednost, to može biti malo teško.
Na primjer, imamo niz cijena u vrijednosti od 100 USD i trebamo dobiti cijenu u cijelom broju. U ovom slučaju, ako pokušamo upotrijebiti bilo koji od gore raspravljenih pristupa, dobit ćemo iznimku.
Ovim se vrstama scenarija lako može rukovati pomoću petlje for i regularnog izraza nakon dijeljenja niza u niz znakova.
Pogledajmo program:
class Program { static void Main(string() args) { string price = '0'; string priceNumeric = ''; for(inti =0; i Izlaz
Numerička vrijednost cijene je: 100
Obrazloženje:
U gornjem dijelu koda imamo varijablu cijene vrste podataka niza. Zatim definiramo i inicijaliziramo drugu varijablu niza priceNumeric. Ideja je koristiti ga za držanje numeričkog dijela varijable cijene.
Dalje, koristili smo petlju for za provjeru brojeva u svakom znaku u nizu. Da bismo to učinili, prvo smo dohvatili znakove u varijabli ch pomoću indeksa. Zatim smo pomoću izraza regularnih izraza provjerili podudara li se znak koji smo odabrali iz niza bilo kojoj brojčanoj znamenci. (Izraz ' d' iz regularnog izraza označava podudaranje s jednom numeričkom znamenkom.).
Zatim spajamo i pohranjujemo brojevni niz u varijablu priceNumeric. Nakon završetka petlje, svi će se vaši numerički nizovi dodati ovoj varijabli, a svaki drugi znak, uključujući posebne znakove, abecede itd., Uklonit će se.
Kao što znamo, ovaj niz sada sadrži samo numeričke znakove, a pretvorbu možemo izravno koristiti za pretvaranje ovog niza u cijeli broj.
Zaključak
U ovom uputstvu naučili smo kako možemo pretvoriti niz u cijeli broj. Također smo naučili koristiti različite metode koje se mogu koristiti za pretvorbu na temelju zahtjeva.
Predloženo čitanje = >> Kako pretvoriti String u Integer u Javi I Kako pretvoriti Integer u String u Javi
Dalje, razgovarali smo o programu za pretvaranje nizova s posebnim znakovima ili abecedama u cijeli broj uklanjanjem dijelova koji nisu cijeli. Ovaj se primjer programa može prilagoditi prema zahtjevu korisnika i može se koristiti za dohvaćanje numeričkih podataka iz bilo kojeg niza.
=> Ovdje pročitajte C # Vodič za početnike
Preporučena literatura
- Vodič za niz stringa C # - Nizne metode s primjerima koda
- Java string sa String Buffer-om i String Builder Tutorial
- Java niti s metodama i životnim ciklusom
- Python string funkcije
- Vodič za dijeljenje Python Stringa
- Naučite koristiti C # StringBuilder klasu i njene metode s primjerima
- Napredno skriptiranje ljuske Unixa: nizovi, operateri ispitivanja datoteka i nizova, posebne varijable
- Generator slučajnih brojeva C # i generator slučajnih nizova C # s primjerima koda