当前位置: 代码迷 >> java >> 确定输入字符串是否确实是有效的四字符双字面量
  详细解决方案

确定输入字符串是否确实是有效的四字符双字面量

热度:61   发布时间:2023-07-18 09:03:56.0

我有一个问题。 我必须确定输入字符串是否确实是有效的四字符双字面量

  1. 完全由以下字符组成:“+”、“-”、“.” (小数点)和“0”到“9”
  2. '+' 或 '-' 字符只能作为第一个字符出现
  3. 这 '。' (小数点)字符必须只出现一次
  4. 所有其他字符必须是“0”到“9”字符

我的大问题是将 +- 放在第一个字符和 . 一次

尝试这个 -

static boolean isValid(String s) {
        // 1
        if (s.length() != 4) return false;

        String digits = "0123456789";
        // 2
        if (s.charAt(0) != '+' && s.charAt(0) != '-' && digits.indexOf(s.charAt(0)) == -1) return false;


        byte decimalCount = 0;

        for (int i = 1; i < 4; i++) {
            if (s.charAt(i) == '.') decimalCount++;
                // 4
            else if (digits.indexOf(s.charAt(i)) == -1) return false;
        }

        //3
        return decimalCount == 1;
    }
  相关解决方案