LeedCode表示数值的字符串

题目

请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100"、"5e2"、"-123"、"3.1416"、"-1E-16"、"0123"都表示数值,但"12e"、"1a3.14"、"1.2.3"、"+-5"及"12e+5.4"都不是。

来源:力扣(LeetCode)

链接:https://leetcode-cn.com/problems/biao-shi-shu-zhi-de-zi-fu-chuan-lcof

著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解答及思路

    使用了字符串强转为双精度型数据,而由于结尾为f或D的不被认为是数值,所以前面加入if判断。

源码

class Solution {

    public boolean isNumber(String s) {

        if(s.contains("f")||s.contains("D")){

            return false;

        }

        try{

            double a1 = Double.parseDouble(s);

            return true;

        }catch(Exception e){}

        return false;

    }

}

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容