how convert char int java
In deze tutorial zullen we de verschillende manieren leren om waarden van primitief gegevenstype char naar int in Java te converteren, samen met veelgestelde vragen en voorbeelden:
We behandelen het gebruik van de volgende methoden die door verschillende Java-klassen worden geboden voor het converteren van karakter naar int:
- Impliciet type casten (ASCII-waarden ophalen)
- getNumericValue ()
- parseInt () met String.valueOf ()
- ‘0’ aftrekken
Kijk hier om A-Z van Java-trainingshandleidingen te zien
Wat je leert:
- Converteer Char naar int in Java
- # 1) Impliciet type cast gebruiken, d.w.z. ASCII-waarde van het personage krijgen
- # 2) De methode Character.getNumericValue () gebruiken
- # 3) Met behulp van Integer.parseInt () en String.ValueOf () -methode
- # 4) Converteer Char naar int in Java door ‘0’ af te trekken
- Veelgestelde vragen over Char To Int Java
- Gevolgtrekking
Converteer Char naar int in Java
Java heeft primitieve gegevenstypen zoals int, char, long, float, etc. In sommige scenario's is het vereist om bewerkingen uit te voeren op numerieke waarden, waarbij variabele waarden worden gespecificeerd in het gegevenstype char.
In dergelijke gevallen moeten we deze tekenwaarden eerst converteren naar numerieke waarden, d.w.z. int-waarden, en vervolgens de gewenste acties, berekeningen hierop uitvoeren.
Bijvoorbeeld, in sommige softwaresystemen moeten bepaalde bewerkingen worden uitgevoerd of moeten sommige beslissingen worden genomen op basis van de klantbeoordelingen die zijn ontvangen in het feedbackformulier voor klanten dat wordt geleverd als het gegevenstype van de tekens.
In dergelijke gevallen moeten deze waarden eerst worden geconverteerd naar het gegevenstype int om numerieke bewerkingen op deze waarden uit te voeren. Java biedt verschillende methoden om karakter naar een int-waarde te converteren. Laten we deze methoden in detail bekijken.
# 1) Impliciet type cast gebruiken, d.w.z. ASCII-waarde van het personage krijgen
Als u in Java een kleinere gegevenstypewaarde toewijst aan een variabele van de compatibele grotere gegevenstypevariabele, wordt de waarde automatisch gepromoot, d.w.z. wordt impliciet getypecast naar een variabele van het grotere gegevenstype.
Bijvoorbeeld, als we een variabele van het type int toewijzen aan een variabele van het type long, dan wordt de int-waarde automatisch getypecast naar datatype long.
Impliciete type-casting gebeurt ook voor de gegevenstypevariabele ‘char’, d.w.z. wanneer we de volgende char-variabele-waarde toewijzen aan het variabele ‘int’-gegevenstype, wordt de char-variabele-waarde automatisch geconverteerd naar een int door de compiler.
Bijvoorbeeld,
char a = ‘1’;
int b = a;
Hier wordt teken ‘a’ impliciet getypt naar het gegevenstype int.
Als we de waarde van ‘b’ afdrukken, ziet u consoleafdrukken ‘49’. Dit komt omdat wanneer we char-variabele waarde ‘a’ toewijzen aan int variabele ‘b’, we feitelijk de ASCII-waarde van ‘1’ ophalen, wat ‘49’ is.
Laten we in het volgende Java-voorbeeldprogramma kijken hoe we karakter naar int kunnen converteren via impliciete typecast, d.w.z. ASCII-waarde van char-variabele ophalen.
Hier is het programma-uitvoer:
ASCII-waarde van P -> 80
ASCII-waarde van p -> 112
ASCII-waarde van 2 -> 50
ASCII-waarde van @ -> 64
In het bovenstaande programma kunnen we de ASCII-waarden van verschillende char-variabelewaarden als volgt zien:
ASCII-waarde van P -> 80
ASCII-waarde van p -> 112
Het verschil in waarden voor ‘P’ en ‘p’ is dat ASCII-waarden verschillen voor hoofdletters en kleine letters.
Evenzo krijgen we ASCII-waarden voor numerieke waarden en speciale tekens, evenals als volgt:
ASCII-waarde van 2 -> 50
ASCII-waarde van @ -> 64
# 2) De methode Character.getNumericValue () gebruiken
De klasse Character heeft statische overbelastingsmethoden van getNumericValue (). Deze methode retourneert een waarde van het gegevenstype int, vertegenwoordigd door een opgegeven Unicode-teken.
Hier is de methodehandtekening van de methode getNumericValue () voor het gegevenstype char:
openbare statische int getNumericValue (char ch)
Deze statische methode ontvangt een argument van het gegevenstype char en retourneert de waarde van het gegevenstype int die het argument ‘ch’ vertegenwoordigt.
Bijvoorbeeld, het karakter ‘ u216C’ retourneert een geheel getal met de waarde 50.
Parameters:
ch: Dit is een karakter dat moet worden geconverteerd naar int.
Geeft terug:
Deze methode retourneert de numerieke waarde van ‘ch’ als een niet-negatieve waarde van het gegevenstype int. Deze methode retourneert -2 als ‘ch’ een numerieke waarde heeft die geen niet-negatief geheel getal is. Geeft -1 terug als ‘ch’ geen numerieke waarde heeft.
wat moet u gebruiken bij het oplossen van problemen met een actieve netwerkkabel
Laten we eens kijken naar het gebruik van deze Character.getNumericValue () - methode om karakter naar een int-waarde te converteren.
Laten we eens kijken naar het scenario waarin een van de banksoftwaresystemen, waar het geslacht wordt gespecificeerd in het gegevenstype ‘char’ en op basis van de geslachtscode een beslissing moet worden genomen, zoals het toewijzen van rentetarieven.
Hiervoor moet de geslachtscode worden geconverteerd van char naar int datatype. Deze conversie wordt gedaan met behulp van de Character.getNumericValue () - methode in het onderstaande voorbeeldprogramma.
Hier is het programma-uitvoer:
genderCode—> 1
Welkom, onze bank biedt een speciale rente op vaste deposito's voor onze vrouwelijke klanten: 7,0%.
Schiet op, deze aanbieding is slechts voor een beperkte periode geldig.
Dus in het bovenstaande programma converteren we de char-variabele geslachtswaarde naar de int-waarde om de int-waarde in de variabele genderCode te krijgen.
char geslacht = ‘1’;
int genderCode = Karakter. getNumericValue (geslacht);
Dus als we afdrukken op console, System. uit .println ('genderCode ->' + genderCode); dan zien we de int-waarde op de console zoals hieronder:
genderCode—> 1
Dezelfde variabele waarde wordt doorgegeven aan de switch case loop schakelaar (genderCode) voor verdere besluitvorming.
# 3) Met behulp van Integer.parseInt () en String.ValueOf () -methode
Deze statische methode parseInt () wordt geleverd door de klasse wrapper-klasse Integer.
Hier is de methode-handtekening van Geheel getal.parseInt ()
public static int parseInt (String str) gooit NumberFormatException
Deze methode parseert het String-argument en beschouwt String als een decimaal geheel getal met teken. Alle tekens van het argument String moeten decimale cijfers zijn. De enige uitzondering is dat het eerste teken een ASCII-minteken ‘-‘ en een plusteken ‘+’ mag zijn voor een indicatie van respectievelijk een negatieve waarde en een positieve waarde.
Hier is de ‘str’ -parameter een String met de int-representatie die moet worden geparseerd en retourneert de integerwaarde die wordt vertegenwoordigd door het argument in decimaal. Als de String geen parseerbaar geheel getal bevat, genereert de methode een uitzondering NumberFormatException
Zoals te zien is in de methodehandtekening voor parseInt ( Draad str), is het argument dat moet worden doorgegeven aan de methode parseInt () van het gegevenstype String. Het is dus vereist om eerst een char-waarde naar String te converteren en vervolgens deze String-waarde door te geven aan de parseInt () - methode. Hiervoor wordt de String.valueOf () methode gebruikt.
valueOf () is een statische overbelastingsmethode van de String-klasse die wordt gebruikt om argumenten van primitieve gegevenstypen zoals int, float naar String-gegevenstype om te zetten.
openbare statische String valueOf (int i)
Deze statische methode ontvangt een argument van het gegevenstype int en retourneert de tekenreeksweergave van het int-argument.
Parameters:
i: Dit is een geheel getal.
Geeft terug:
De tekenreeksweergave van het int-argument.
We gebruiken dus een combinatie van de methode Integer.parseInt () en String.valueOf (). Laten we eens kijken naar het gebruik van deze methoden in het volgende voorbeeldprogramma. Dit voorbeeldprogramma (1) converteert eerst de klantbeoordelingswaarde van het karaktergegevenstype naar een geheel getal en (2) drukt vervolgens het juiste bericht op de console af met de if-else-instructie.
Hier is het programma-uitvoer:
customerRatings Stringwaarde -> 7
customerRatings int waarde -> 7
Gefeliciteerd! Onze klant is erg blij met onze dienstverlening.
In de bovenstaande voorbeeldcode hebben we de methode String.valueOf () gebruikt om teken om te zetten in een waarde van het gegevenstype String.
Nu wordt deze String-waarde geconverteerd naar het gegevenstype int met behulp van de methode Integer.parseInt () door deze door te geven klantRatingsStr als argument.
Deze int-waarde klantbeoordeling wordt verder gebruikt in de if-else-instructie voor het vergelijken en afdrukken van het vereiste bericht op de console.
# 4) Converteer Char naar int in Java door ‘0’ af te trekken
We hebben gezien dat karakter naar int wordt geconverteerd met behulp van impliciete typecasting. Dit retourneert de ASCII-waarde van het teken. Bijv. ASCII-waarde van ‘P’ retourneert 80 en de ASCII-waarde van ‘2’ retourneert 50.
Om de int-waarde voor ‘2’ echter op te halen als 2, moet de teken-ASCII-waarde van ‘0’ van het teken worden afgetrokken. Bijv. Om int 2 op te halen uit teken ‘2’,
Notitie Dit is handig om alleen int-waarden voor numerieke waardetekens te krijgen, dwz 1, 2, enz., En niet nuttig met tekstwaarden zoals 'a', 'B' enz., Omdat het alleen het verschil tussen de ASCII-waarden van '0 retourneert 'en dat karakter.
Laten we eens kijken naar het voorbeeldprogramma om deze methode te gebruiken om de ASCII-waarde van nul, d.w.z. ‘0’, af te trekken van de ASCII-waarde van het teken.
Hier is het programma-uitvoer:
ASCII-waarde van 0 -> 48
ASCII-waarde van 1 -> 49
Geheel getal van 0 -> 0
Geheel getal van 1 -> 1
Geheel getal van 7 -> 7
Geheel getal van a -> 49
Als we in het bovenstaande programma tekens ‘0’ en ‘1’ toewijzen aan de waarde van het gegevenstype int, krijgen we ASCII-waarden van deze tekens vanwege impliciete conversie. Dus wanneer we deze waarden afdrukken zoals te zien in de onderstaande verklaringen:
We krijgen de uitvoer als:
ASCII-waarde van 0 -> 48
ASCII-waarde van 1 -> 49
Dus om een geheel getal te krijgen dat dezelfde waarde vertegenwoordigt als die van char, trekken we de ASCII-waarde ‘0’ af van de tekens die numerieke waarden vertegenwoordigen.
Hier trekken we ASCII-waarden van ‘0’ af van de ‘1’ ASCII-waarde.
d.w.z. 49-48 = 1. Daarom, wanneer we afdrukken op console char2
System.out.println ('Integer waarde van' + char2 + '->' + int2);
We krijgen de output als:
Geheel getal van 1 -> 1
Hiermee hebben we de verschillende manieren besproken om Java-tekens naar een geheel getal te converteren met behulp van voorbeeldprogramma's. Dus om karakter naar int in Java te converteren, kan elk van de methoden die in de bovenstaande voorbeeldcodes worden behandeld in uw Java-programma worden gebruikt.
Laten we nu eens kijken naar enkele veelgestelde vragen over de conversie van Java-tekens naar int.
Veelgestelde vragen over Char To Int Java
Q # 1) Hoe converteer ik een char naar een int?
Antwoord:
In Java kan char worden geconverteerd naar een int-waarde met behulp van de volgende methoden:
- Impliciet type casten (ASCII-waarden ophalen)
- Character.getNumericValue ()
- Integer.parseInt () met String.valueOf ()
- ‘0’ aftrekken
Q # 2) Wat is een teken in Java?
Antwoord: Het char-gegevenstype is een primitief Java-gegevenstype met een enkel 16-bits Unicode-teken. De waarde wordt toegewezen als een enkel teken tussen een enkel aanhalingsteken ‘’. Bijvoorbeeld, char a = ‘A’ of char a = ‘1’ enz.
Q # 3) Hoe initialiseer je een teken in Java?
Antwoord: char variabele wordt geïnitialiseerd door een enkel teken toe te wijzen tussen enkele aanhalingstekens, d.w.z. ‘’. Bijvoorbeeld, char x = ‘b’, char x = ‘@’, char x = ‘3’ enz.
Q # 4) Wat is de int-waarde van char A?
Antwoord: Als teken ‘A’ is toegewezen aan de variabele int, wordt char impliciet gepromoveerd tot int en als de waarde wordt afgedrukt, retourneert het de ASCII-waarde van het teken ‘A’, wat 65 is.
Bijvoorbeeld,
Dit zal dus 65 afdrukken op de console.
Gevolgtrekking
In deze zelfstudie hebben we de volgende manieren gezien om waarden van het Java-gegevenstype char naar int te converteren.
- Impliciet type casten (ASCII-waarden ophalen)
- Character.getNumericValue ()
- Integer.parseInt () met String.valueOf ()
- ‘0’ aftrekken
We hebben elk van deze manieren in detail behandeld en het gebruik van elke methode gedemonstreerd met behulp van een voorbeeld Java-programma.
Bekijk hier ALLE Java-tutorials
Aanbevolen literatuur
- Java Integer en Java BigInteger-klasse met voorbeelden
- JAVA-zelfstudie voor beginners: 100+ praktische Java-videotutorials
- TreeMap in Java - Tutorial met Java TreeMap-voorbeelden
- Hoe Java String naar Int te converteren - Tutorial met voorbeelden
- Java Float-zelfstudie met programmeervoorbeelden
- Java Break Statement - Tutorial met voorbeelden
- Java Enum: zelfstudie over Java-opsomming met voorbeelden
- Java String length () Methode met voorbeelden