This week's book giveaway is in the Servlets forum.
We're giving away four copies of Murach's Java Servlets and JSP and have Joel Murach on-line!
See this thread for details.
The moose likes Beginning Java and the fly likes Char into Integer Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "Char into Integer" Watch "Char into Integer" New topic
Author

Char into Integer

Manuel Diaz
Ranch Hand

Joined: Apr 22, 2005
Posts: 79
Hi, I have a variable "c" of type char, I need to convert that variable to an integer value. How can I do this?.


Note: I love programming.
miguel lisboa
Ranch Hand

Joined: Feb 08, 2004
Posts: 1281
i made this:


but then last two lines left me quite perplexed...


java amateur
Edwin Dalorzo
Ranch Hand

Joined: Dec 31, 2004
Posts: 961
char is assignable to int



As simple as that.
miguel lisboa
Ranch Hand

Joined: Feb 08, 2004
Posts: 1281
ok, that's exactly what i did, but my Q remains: what means the output beeing 55?
K Riaz
Ranch Hand

Joined: Jan 08, 2005
Posts: 375
ASCII value.
Layne Lund
Ranch Hand

Joined: Dec 06, 2001
Posts: 3061
Originally posted by miguel lisboa:
ok, that's exactly what i did, but my Q remains: what means the output beeing 55?


This is the Unicode value for whatever character was stored in the variable. For the characters in the English alphabet, the Unicode value is the same as the ASCII value.

Layne
[ May 15, 2005: Message edited by: Layne Lund ]

Java API Documentation
The Java Tutorial
Layne Lund
Ranch Hand

Joined: Dec 06, 2001
Posts: 3061
Originally posted by Manuel Diaz:
Hi, I have a variable "c" of type char, I need to convert that variable to an integer value. How can I do this?.


As you can see above, it depends on what you mean by "the integer value". Do you want the Unicode value? Or do you want the numerical value corresponding to the char (i.e. 0 for '0', 1 for '1', etc.). As miguel's example shows, you can use the String and Integer classes to convert to the numerical value. However, there is a shorter way. Since char is internal stored as an integral value, you can use arithmetic operations. It also helps that all the digit characters are stored in order. This means that you can do something like this:

This takes the Unicode value of the input character and subtracts the Unicode value for the character '0'. It should be obvious that this will produce the correct numerical value for any digit character. If you really want to use this method, you should also add error handling code to make sure the char is REALLY a digit (and not a letter or punctuation or something lese).

Layne
Manuel Diaz
Ranch Hand

Joined: Apr 22, 2005
Posts: 79
Please read this post, here is my problem explained, is my last reply:

http://www.coderanch.com/t/399682/java/java/do
My post
Joel McNary
Bartender

Joined: Aug 20, 2001
Posts: 1817

The solution is quite simple:


Using the example from your other thread:

should get you what you want.


Piscis Babelis est parvus, flavus, et hiridicus, et est probabiliter insolitissima raritas in toto mundo.
 
jQuery in Action, 2nd edition
 
subject: Char into Integer
 
Similar Threads
Literal conversion
char primitive initialization values
range of char
What does this mean?
Java in general