public String numberToWords(int number){
        StringBuffer buffer = new StringBuffer();
        if(number ==0){
            return toString(number).trim();
        }
        if(number < 0){
            buffer.append("Minus");
            number = number *-1;
        }
        if (number >= BILLION) {
            int first = number / BILLION;
            number = number % BILLION;
            buffer.append(hundredsPart(first)).append(toString(BILLION));
        }
        if(number >= MILLION){
            int first = number /MILLION;
            number = number % MILLION;
            buffer.append(hundredsPart(first)).append(toString(MILLION));
        }
        if(number >= THOUSAND){
            int first = number /THOUSAND;
            number = number % THOUSAND;
            buffer.append(hundredsPart(first)).append(toString(THOUSAND));
        }
        buffer.append(hundredsPart(number));
        return buffer.toString().trim();
    }
Convert a number into words

Reference
https://leetcode.com/problems/integer-to-english-words/
src/com/interview/misc/NumberToWord.java