From charlesreid1

Check if a string is numeric

To check if a String in Java is numeric, build a simple utility function:

public static boolean isNumeric(String str)  
{  
    try  
    {  
        double d = Double.parseDouble(str);  
    }  
      catch(NumberFormatException nfe)  
    {  
        return false;  
    }  
    return true;  
}

Interpret character as digit

The Character class has the static digit method, which takes a character and an integer radix, and returns an integer - the character interpreted as an integer. It also has a boolean isDigit() to check if the character is a digit. Use them in combo:

String n = "283982749847594837";

// Populate a queue with characters
Queue<Character> q = new LinkedList<Character>();
char[] narr = n.toCharArray();
for(int i=0; i<narr.length; i++) { 
    q.add(narr[i]);
}

// Print out the square of each character interpreted as a digit
int j = 0;
for(Character c : q) {
    z = -1;
    if( c.isDigit() ) { 
        z = Character.digit(c,10);
    } else {
        throw new IllegalArgumentException("Malformed input. Numeric strings only.");
    }
    if(j<q.size()-1) {
        System.out.println(" , ");
    }
}

Flags





See also: