如何用正则表达式判断一个变量是否为double类型

 我来答
帐号已注销
2018-04-12 · TA获得超过2.3万个赞
知道小有建树答主
回答量:147
采纳率:0%
帮助的人:5.6万
展开全部

将变量值转换为字符串,然后判断字符串是否符合下面的正则[0-9]*(\.[0-9]*|[eE][+-][0-9]*)$

1、用正则表达式判断变量为double类型,程序代码java">public static booleisDouble(String str) {Pattern pattern = Pattern.compile("^[-//+]?//d+(//.//d*)?|//.//d+$");return pattern.matcher(str).matches();

2、如果不用正则表达式,下面的函数也可以判断变量是否为double类java">public static boolean isDouble(String str){try{

Double.parseDouble(str);

return true;catch(NumberFormatException ex){return false天云一号  2016-10-20

3、用正则表达式判断变量为double类型,程序static boolean isDouble(String str) {

Pattern pattern = Pattern.compile("^[-//+]?//d+(//.//d*)?|//.//d+$");

return pattern.matcher(str).matches();

如果不用正则表达式,下面的函数也可以判断变量是否为double类型

static boolean isDouble(String str){

try{

Double.parseDouble(str);

return true;

catch(NumberFormatException ex){

return false;

xzenith
2016-12-07 · 超过23用户采纳过TA的回答
知道答主
回答量:56
采纳率:0%
帮助的人:34.6万
展开全部

正则是基于字符串的文法规则,变量类型则是在内存中的存储的格式,两者概念不同。


若想问的是,如何判断某变量的数值是否是 double 类型,C 语言中,

C 标准规定double 类型的整数部分的最小表示范围和 float 一样,都是 1.0E-37 到 1.0E+37,但是它要求 double 类型的小数部分至少要能精确到小数点后 6 位。double 通常是 64 位的。

例如 1 不是 double,2.333333 是 double。那么,对应的正则表达式是

[-+]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
天云小店
2016-10-20 · TA获得超过2.8万个赞
知道大有可为答主
回答量:3281
采纳率:91%
帮助的人:787万
展开全部

  用正则表达式判断变量为double类型,程序代码如下:

public static boolean isDouble(String str) {
    Pattern pattern = Pattern.compile("^[-//+]?//d+(//.//d*)?|//.//d+$");
    return pattern.matcher(str).matches();
  }

如果不用正则表达式,下面的函数也可以判断变量是否为double类型

public static boolean isDouble(String str){
    try{
        Double.parseDouble(str);
        return true;
    }
    catch(NumberFormatException ex){
        return false;
    }
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
技术剪辑
2016-08-21 · 优秀的签名突显我的个性
技术剪辑
采纳数:75 获赞数:166

向TA提问 私信TA
展开全部
就是判断 是否是数字 是否有小数点呗 是数字 有小数点 就是double类型了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友8ce788f
2016-11-23 · TA获得超过687个赞
知道小有建树答主
回答量:850
采纳率:80%
帮助的人:209万
展开全部
用正则表达式判断变量为double类型,程序代码如下:

static boolean isDouble(String str) {
Pattern pattern = Pattern.compile("^[-//+]?//d+(//.//d*)?|//.//d+$");
return pattern.matcher(str).matches();
}

如果不用正则表达式,下面的函数也可以判断变量是否为double类型

static boolean isDouble(String str){
try{
Double.parseDouble(str);
return true;
}
catch(NumberFormatException ex){
return false;
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(11)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式