首页 > 解决方案 > 检查用户输入数字java的格式

问题描述

我想检查用户输入的双精度值是否为 XXX.YYY 格式。如果是,那么它将返回 true,否则返回 false。我想知道是否可以使用 decimalFormat 类来做到这一点。人们说要使用正则表达式,但现在这超出了我的范围。

标签: javavalidationdecimalformat

解决方案


纯java字符串解决方案:

  public static boolean isValid(String str) {
    if (str == null || str.length() != 7) {
      return false;
    }
    return Character.isDigit(str.charAt(0)) && Character.isDigit(str.charAt(1)) && Character.isDigit(str.charAt(2))
      && str.charAt(3)=='.' && 
      Character.isDigit(str.charAt(4)) && Character.isDigit(str.charAt(5)) && Character.isDigit(str.charAt(6));
  }

  public static void main(String[] args) {
    System.out.println(isValid("123.456"));
    System.out.println(isValid("12.456"));
    System.out.println(isValid("abc.456"));
  }

推荐阅读