天天看點

[(工地散裝)java] 判斷字元串是否為數字

簡介:判斷給定的字元串是否為數字,支援“.”,“+”,“-”。

下面展示

代碼

自學的散裝工地java,如果有更好的寫法歡迎指出!

//判斷輸入的字元串是否為數字
public class boolean_number {

    public static boolean isNumber(String str) {
        //空字串不予考慮
        if (str==null){
            System.out.printf("emptye!");
            return false;
        }

        int num=0;
        for (int i = str.length(); --i > 0; ) {
            //記錄整個字元串中出現的 . 的數目, 如果不止一個那麼就不是數字

            if (num > 1) {
                System.out.printf("no!");
                return false;
            }

            //判斷首字元是否為 + - .
            if (i == 0) {
                //如果第一個字元是 + 或者 -  或者 . ,那麼繼續判斷後續字元,否則傳回 不是數字
                if (Character.toString(str.charAt(i)).equals("+") || Character.toString((str.charAt(i))).equals("-")) {
                    continue;
                } else if (Character.toString(str.charAt(i)).equals(".")) {
                    num++;
                    continue;
                } else {
                    System.out.printf("no!");
                    return false;
                }
            }
            //判斷字元是否為 整數字 或 .
            if (Character.isDigit(str.charAt(i))) {
                continue;
            } else if (Character.toString(str.charAt(i)).equals(".")) {
                num++;
                continue;
            }
            else {
                System.out.printf("no!");
                return false;
            }
        }
        //是數字
        System.out.printf("yes!");
        return true;
    }
}