暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

《程序猿笔试题系列》之 表示数值的字符串

JAVA的学习之路 2021-03-14
171


题目描述

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


示例

1
输入
"123.45e+6"
输出
true

2
输入
"1.2.3"   
输出
    false

思路分析

    在这个题目中,一定要注意的是题目需要我们做的是写一个函数来判断字符串表示数字。一看到这个题目的时候,可以看出对于这个题目用的就是正则表达式了。具体操作如下:

  public static boolean isNumeric(String str) {


// ^表示开头 $ 表示结尾 java中两个\\ 代表一个\
// * 零次或多次匹配前面的字符或子表达式
// ?零次或一次匹配前面的字符或子表达式
// + 一次或多次匹配前面的字符或子表达式
// [] 字符集。匹配包含的任一字符
// (:? )匹配 pattern 但不捕获该匹配的子表达式,即它是一个非捕获匹配
String p = "^[+-]?\\d*(?:\\.\\d*)?(?:[eE][+-]?\\d+)?$";
return Pattern.matches(p,str);
}



历史文章及资料

第一节阶段:Java 基础入门
第二阶段:数据库

第三阶段:设计模式

第四阶段:JDBC、Java8、JavaSE和Html&CSS

第五阶段:框架

第六阶段:必备技能

第七阶段:JVM

第八阶段:线程及线程池

Java经典编程50题






- THE END -

作者简介

Mr.W

白天搬砖,晚上砌梦想。

相信每个人有故事,程序员更是有许多事故,书写最接地气的程序员故事,为大家找出更好的资料。



文章转载自JAVA的学习之路,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论