Write your own String to Integer (atoi) converter.
Implement your own ASCII to Integer (atoi) method which converts a string to an integer.
Input 1: "123"Output: 123 (as int)
Input 2: "0"Output: 0 (as int)
Input 3: "8"Output: 8 (as int)
Input 2: "0"
Output: 0 (as int)
Input 3: "8"
Output: 8 (as int)
Algorithm
Before we look into the algorithm, lets understand the ASCII ranges for 0-9.
ASCII Char
---------------
48 0
49 1
50 2
51 3
52 4
53 5
54 6
55 7
56 8
57 9
so if we have char '4' and we want to get the Integer representation of '4', we can get by
int number = '4' - '0' which would be 52 - 48 = 4 (an integer 4),
similarly, if we want to get the integer representation of char '7', just subtract it by '0'.
int number = '7' - '0' which would be 55 - 48 = 7 (an integer 7), similarly
Lets jump to original problem, if given the String "123"
Iterate the String, get the first character '1', convert it to Integer as shown above.
Similarly for all the characters of the String.
For getting the integer number, we will use the technique,
sum = 0 initially.
sum = (sum * 10) + (str.charAt(i) - '0')
Java Program to convert Ascii To Integer.
package javabypatel; public class ASCIIToInteger { public static void main(String[] args) { System.out.println(asciiToInt("10")); } private static int asciiToInt(String num) { int result = 0; for (int i = 0; i < num.length(); i++) { char ch = num.charAt(i); result = (result * 10) + (ch - '0'); } return result; } }
You may also like to see
Advanced Java Multithreading Interview Questions & Answers
Type Casting Interview Questions and Answers In Java?
Exception Handling Interview Question-Answer
Method Overloading - Method Hiding Interview Question-Answer
How is ambiguous overloaded method call resolved in java?
Method Overriding rules in Java
Interface interview questions and answers in Java
Enjoy !!!!
If you find any issue in post or face any error while implementing, Please comment.
Post a Comment