logo

Virkne uz int Java

Java, darbojoties ar virknēm, ir gadījumi, kad mums ir jāpārvērš skaitlis, kas attēlots kā virkne, vesela skaitļa veidā. Mēs parasti to darām, jo ​​mēs varam strādāt ar plašu elastīgu darbību kopumu, izmantojot virknes. Metode, ko parasti izmanto, lai Java pārveidotu virkni par veselu skaitli, ir parseInt () no Stīgu klase .

Šajā rakstā mēs redzēsim, kā Java pārvērst virkni par int.

Java virkne uz Int



Programma Java virknes konvertēšanai uz int

Ņemsim uzreiz piemēru, lai pierastu pie darba metodes parseInt() :

Java




// Java program to demonstrate working parseInt()> // Where No NumberFormatException is Thrown> // Main class> public> class> GFG {> >// Main driver method> >public> static> void> main(String args[])> >{> >// Custom wide-varied inputs to illustrate> >// usage of valueOf() method> >int> decimalExample = Integer.parseInt(>'20'>);> >int> signedPositiveExample = Integer.parseInt(>'+20'>);> >int> signedNegativeExample = Integer.parseInt(>'-20'>);> >int> radixExample = Integer.parseInt(>'20'>,>16>);> >int> stringExample = Integer.parseInt(>'geeks'>,>29>);> >// Print commands on console> >System.out.println(decimalExample);> >System.out.println(signedPositiveExample);> >System.out.println(signedNegativeExample);> >System.out.println(radixExample);> >System.out.println(stringExample);> >}> }>

>

>

Izvade

20 20 -20 32 11670324>

parseInt() metode Java valodā

Šai metodei ir divi varianti:

  1. parseInt(virknes): Šī funkcija parsē virknes argumentu kā veselu decimālo skaitli ar zīmi.
  2. parseInt(virkne s, int radix): Šī funkcija parsē virknes argumentu kā veselu skaitli ar zīmi otrajā argumentā norādītajā radiksā.

ParseInt sintakse

public static int   parseInt(String str);   public static int   parseInt(String str, int radix);>

Parametri

  • str: S tring, kas jāpārvērš par veselu skaitli.
  • radix: tiek izmantots, kamēr tiek parsēta virkne.

Atgriešanas veids

  • Abas metodes virkni pārvērš vesela skaitļa ekvivalentā. Vienīgā atšķirība ir parametra radix. Pirmo metodi var uzskatīt ar radix = 10 (Decimal).

Izņēmums Izmests

  • NumberFormatException tiek izmests ar šo metodi, ja rodas kāda no tālāk minētajām situācijām.

Atcerieties dažus galvenos punktus, kas saistīti ar abiem variantiem:

ascii tabula c
  1. Virkne var būt nulles vai nulles garuma
  2. Virknes attēlotā vērtība nav int tipa vērtība
  3. Īpaši funkcijas parseInt(String s, int radix) variantam:
    • Otrais arguments ir mazāks par Character.MIN_RADIX vai lielāks par Character.MAX_RADIX
    • Neviena virknes rakstzīme nav norādītā skaitļa cipars, izņemot to, ka pirmā rakstzīme var būt mīnusa zīme “-” ('u002D') vai pluszīme '+' ('u002B'), ja virkne ir garāks par 1. garumu
  4. Ja jūsu virknei ir sākuma nulles, metode parseInt() tās ignorēs.

Gadījumi parseInt() metode

Ņemsim nejaušu koda fragmentu, lai labāk izprastu ilustrācijas.

1. gadījums: parseInt(20, 16)

atgriež 32 , (2)*16^1 + (0)*16^0 = 32

2. gadījums: parseInt(2147483648, 10)

izmet NumberFormatException

3. gadījums: parseInt(99, 8)

izmet NumberFormatException
Iemesls: 9 nav pieņemts oktālo skaitļu sistēmas cipars

4. gadījums: parseInt(geeks, 28)

izmet NumberFormatException

5. gadījums: parseInt(geeks, 29)

atgriež 11670324, Iemesls: Ciparu sistēmā ar bāzi 29 var būt cipari no 0 līdz 9, kam seko rakstzīmes a,b,c… līdz s

6. gadījums: parseInt(geeksforgeeks, 29)

izmet NumberFormatException kā Iemesls: rezultāts nav vesels skaitlis.

Skaitļu formāts ParseInt() metodes izņēmumi

Izņēmumi, ko izraisa tālāk minētā metode parseInt():

Java




// Java Program to Demonstrate Working of parseInt() Method> // Where NumberFormatException is Thrown> // Main class> public> class> GFG {> >// Main driver method> >public> static> void> main(String args[])> >{> >// NumberFormatException> >String invalidArguments =>''>;> > >// invalidArguments Error empty string> >// passed> >int> emptyString> >= Integer.parseInt(invalidArguments);> > >// The Converted Intger is out of bound> >// Too large to be called Integer> >int> outOfRangeOfInteger> >= Integer.parseInt(>'geeksforgeeks'>,>29>);> > >// Domain Number System> >int> domainOfNumberSystem> >= Integer.parseInt(>'geeks'>,>28>);> >// Print commands on console> >System.out.println(emptyString);> >System.out.println(outOfRangeOfInteger);> >System.out.println(domainOfNumberSystem);> >}> }>

>

>

Izvade

Līdzīgi mēs varam pārvērst virkni uz jebkuru citu primitīvu datu tipu:

  1. parseLong(): parsē virkni uz Long
  2. parseDouble(): parsē virkni dubultā Ja mēs vēlamies pārvērst virkni par veselu skaitli neizmantojot parseInt() , mēs varam izmantot valueOf() metodi . Tam ir arī divi varianti, kas līdzīgi parseInt()
  3. Atšķirība starp parseInt() un valueOf(): parseInt() parsē virkni un atgriež primitīvo veselā skaitļa tipu. Tomēr valueOf() atgriež veselu skaitļu objektu.

Piezīme: valueOf() izmanto parseInt() iekšēji, lai pārvērstu par veselu skaitli.

Vēl viena pieeja virknes pārvēršanai par veselu skaitli

Papildus Java metodei parseInt() ir vēl viena metode virknes pārvēršanai par veselu skaitli. Tālāk ir norādīta valueOf() metodes ieviešana, kas ir

valueOf() metode

Metode Integer.valueOf() pārvērš virkni par veselu skaitļa objektu. Ļaujiet mums to saprast ar piemēru.

Zemāk ir aprakstīta iepriekš minētās metodes ieviešana:

Java




// Java Program to Demonstrate> // Working of valueOf() Method> // Main class> public> class> GFG {> >// Main driver method> >public> static> void> main(String args[])> >{> >// Custom wide-varied inputs to illustrate> >// usage of valueOf() method> >int> decimalExample = Integer.valueOf(>'20'>);> >int> signedPositiveExample = Integer.valueOf(>'+20'>);> >int> signedNegativeExample = Integer.valueOf(>'-20'>);> >int> radixExample = Integer.valueOf(>'20'>,>16>);> >int> stringExample = Integer.valueOf(>'geeks'>,>29>);> >// Print statements> >System.out.println(decimalExample);> >System.out.println(signedPositiveExample);> >System.out.println(signedNegativeExample);> >System.out.println(radixExample);> >System.out.println(stringExample);> >}> }>

>

>

Izvade

20 20 -20 32 11670324>