求教java中如何判断一个数是不是小数,求详细代码及解释

如题所述

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Test13 {
    public static void main(String[] args) {
        System.out.println(isPositiveDecimal("-0.9"));
        System.out.println(isPositiveDecimal("0.9"));
        System.out.println(isNegativeDecimal("-0.9"));
        System.out.println(isNegativeDecimal("0.9"));
    }
    
    public static boolean isPositiveDecimal(String orginal){  
        return isMatch("\\+{0,1}[0]\\.[1-9]*|\\+{0,1}[1-9]\\d*\\.\\d*", orginal);  
    }  
      
    public static boolean isNegativeDecimal(String orginal){  
        return isMatch("^-[0]\\.[1-9]*|^-[1-9]\\d*\\.\\d*", orginal);  
    }
    private static boolean isMatch(String regex, String orginal){  
        if (orginal == null || orginal.trim().equals("")) {  
            return false;  
        }  
        Pattern pattern = Pattern.compile(regex);  
        Matcher isNum = pattern.matcher(orginal);  
        return isNum.matches();  
    }  
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-07-05
用正则表达式可以判断。你可以百度一下“正则表达式”
相似回答