Search

Wednesday, May 24, 2017

Convert a String to a Number without using Integer.parseInt() method

Here is a way to convert a input String to a Number without using inbuilt Integer.parseInt() method.
import java.util.Scanner;


public class ConvertStringToNumber {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter the String to convert into a number");
        String original = sc.next();
        int number = convertToNumber(original);
        if(number ==  -1){
            System.out.println("Not a number. Please enter a valid number");
        }
        System.out.println("After converting the Number is : " + number);

    }

    private static int convertToNumber(String original) {
        int length = original.length();
        int number = 0;
        int tempNumber;
        int multiply = 1;
        while(length > 0){
            tempNumber = original.charAt(length-1) - '0';
            if(tempNumber > 9 || tempNumber < 0){
                return -1;
            }
            number = number + tempNumber * multiply;
            multiply *= 10;
            length--;
        }
        return number;
    }

}
Hope you guys like it. Happy Learning !!!

No comments:

Post a Comment

Featured Post

ClassNotFoundException vs. NoClassDefFoundError

This is a very common question in Java interviews. Here we will learn to distinguish between two similar, but different problems that ca...