博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
65. Valid Number
阅读量:6156 次
发布时间:2019-06-21

本文共 1377 字,大约阅读时间需要 4 分钟。

一、题目

  1、审题

 

  2、分析

    判断所给字符串是否可以转化为小数类型。

 

二、解答

  1、思路:

    多层判断,转化为小数类型,可以很巧妙的采用多个 flag 进行记录是否符合浮点数定义:

    ①、"+" 或 “-” 符号只能出现在开头或则 e 的后一个字符

    ②、e 前边得有数字、后边得有整形数字

    ③、只能出现一次小数点 "."

public boolean isNumber(String s) {        s = s.trim();        boolean pointSeen = false;    // 出现了小数点        boolean eSeen = false;        // 出现了 e        boolean numberSeen = false;  // 出现了数字        boolean numberAfterE = true;  // 数字出现在 e 后边                for(int i = 0; i < s.length(); i++) {            if('0' <= s.charAt(i) && s.charAt(i) <= '9') {                numberSeen = true;                numberAfterE = true;            }            else if(s.charAt(i)== '.' ) {                if(eSeen || pointSeen)                    return false;                                pointSeen = true;            }            else if(s.charAt(i) == 'e') {                // e 前边得有数字                if(eSeen || !numberSeen)                        return false;                                numberAfterE = false;                eSeen = true;            }            else if(s.charAt(i) == '-' || s.charAt(i) == '+') {                if(i != 0 && s.charAt(i-1) != 'e')                     return false;            }            else {                return false;            }        }                return numberSeen && numberAfterE;    }

 

转载于:https://www.cnblogs.com/skillking/p/9685184.html

你可能感兴趣的文章
MVP Community Camp 社区大课堂
查看>>
GWT用frame调用JSP
查看>>
大型高性能ASP.NET系统架构设计
查看>>
insert select带来的问题
查看>>
EasyUI 添加tab页(iframe方式)
查看>>
mysqldump主要参数探究
查看>>
好记心不如烂笔头,ssh登录 The authenticity of host 192.168.0.xxx can't be established. 的问题...
查看>>
使用addChildViewController手动控制UIViewController的切换
查看>>
Android Fragment应用实战
查看>>
SQL Server查询死锁并KILL
查看>>
内存或磁盘空间不足,Microsoft Office Excel 无法再次打开或保存任何文档。 [问题点数:20分,结帖人wenyang2004]...
查看>>
委托到Lambda的进化: ()=> {} 这个lambda表达式就是一个无参数的委托及具体方法的组合体。...
查看>>
apache 伪静态 .htaccess
查看>>
unity3d 截屏
查看>>
ASP.NET MVC学习之控制器篇
查看>>
MongoDB ServerStatus返回信息
查看>>
分析jQuery源码时记录的一点感悟
查看>>
Sql日期时间格式转换
查看>>
20个最强的基于浏览器的在线代码编辑器 - OPEN资讯
查看>>
Tesseract——OCR图像识别 入门篇
查看>>