java 判断正负数_Java判断一个字符串为数字(正负、小数)
这些天因为工作上的需求,其中一个小环节是传来一个String类型的参数,需要判断该参数是否为数字(正负、正数小数都要能判断)。
当走到这个环节时,首先想到的是isDigit()方法,具体不清楚是哪个类下的了,不过查API后发现该方法不可行,它只能判断正整数。不过为了以后可能会用到该方法,所以特意写了个小程序当备用。
代码如下:
//采用Character.isDigit()方法来判断一个字符串是否为数字
//局限性很大,只能判断全是数字的字符串
char[] strArr = str.toCharArray();
int count = 0;
for(int i = 0; i < strArr.length; i++) {
if(Character.isDigit(strArr[i]) == false) {
count++;
}
}
if(count > 0) {
System.out.println("Is not Number!");
} else {
System.out.println("Is Number!" + str);
}
后来通过百度,又找到了另外两种方法,一种是通过强制类型转换的方式,一种就是正则表达式了。
对于强制类型转换的方式,代码可以这样写:
//采用强制类转换来判断一个字符串是否为数字
//有局限性,如果要判断是int型或double型,就必须要调整转换语句,但可以判断正负
try {
//Integer num = Integer.valueOf(str);
Double num2 = Double.valueOf(str);
//System.out.println("Is Number!" + num);
System.out.println("Is Number!" + num2);
} catch (Exception e) {
System.out.println("Is not Number!");
}
最后能解决我问题的,还是通过正则表达式的方式了。
代码如下:
//采用正则表达式的方式来判断一个字符串是否为数字,这种方式判断面比较全
//可以判断正负、整数小数
Boolean strResult = str.matches("-?[0-9]+.*[0-9]*");
if(strResult == true) {
System.out.println("Is Number!");
} else {
System.out.println("Is not Number!");
}
通过这次的问题,我也发现了自身的不足。正则表达式确实很牛,但是我对它的认识,还停留在了解阶段。所以后续工作中,一定要有意识的多去学习它,使用它。
java 判断正负数_Java判断一个字符串为数字(正负、小数)相关推荐
- C# 判断正负数个数
` //判断正负数个数Console.WriteLine("请输入数字(输入0结束)");int num = int.Parse(Console.ReadLine());int p ...
- Oracle 判断正负数函数 sign
sign(数值).正数大于0返回1,等于0返回0,负数小于0返回-1. select sign(1) from dual: 此函数可以判断正负数数值判断. ----------------小尾巴分割- ...
- python判断正数负数_python判断正负数方式
我就废话不多说了,大家还是直接看代码吧! a1 = raw_input("please input a number") a = int(a1) if(a!=0): if(a &g ...
- python判断正负的函数_python判断正负数方式
我就废话不多说了,大家还是直接看代码吧! a1 = raw_input("please input a number") a = int(a1) if(a!=0): if(a &g ...
- Java中怎么样检查一个字符串是不是数字呢
问题:Java中怎么样检查一个字符串是不是数字呢 在解析之前,怎么样检查一个字符串是不是数字呢 回答一 这些通常是由一个简单的用户自定义函数去解决的(即,自带的 "isNumeric&quo ...
- 统计一个字符串中数字的个数
问题描述 统计一个字符串中数字的个数 程序代码 #include <stdio.h> /* *csdn学院--2016级 *目的:让代码见证成长(作为一个初学的菜鸟,如 *大家有发现错误, ...
- java怎么一段字符串全为数字_java 如何判断一个字符串是数字
断字符串是不是数字,大家可能会用一些java自带的方法,也有可能用其他怪异的招式,比如判断是不是整型数字,将字符串强制转换成整型,不是数字的就会抛出错误,那么就不是整型的了.但本文介绍的比较好的两种方 ...
- java 字符长度 中文_java判断中文字符串长度的简单实例
话不多说,上代码: /** * 获取字符串的长度,如果有中文,则每个中文字符计为2位 * @param value 指定的字符串 * @return 字符串的长度 */ public static i ...
- java判断字符长度_java判断中文字符串长度的简单实例
话不多说,上代码: /** * 获取字符串的长度,如果有中文,则每个中文字符计为2位 * @param value 指定的字符串 * @return 字符串的长度 */ public static i ...
最新文章
- Windows CE 6.0 安装顺序
- Android中的跨进程通信方法实例及特点分析(二):ContentProvider
- java批量修改txt文件_Java小工具 根据文本批量修改文件名
- MySQL高级 - SQL技巧 - 数字函数与字符串函数
- php存储session更改,php如何修改SESSION的生存存储时间的实例代码_php实例
- praying,blessing,wishing
- js 创建keyframe_javascript – 查找特定的CSS @keyframes规则
- 《黑客帝国》中的代码雨让人身临其境!利用Python轻松实现!
- 商汤OCR文本检测+识别开源(FOTS),TF实现NBA记分牌识别
- MOSS搜索的爬网错误【访问被拒绝。请验证默认内容访问账户是否有权访问此库】...
- servlet和springMVC框架
- 数据结构--酒店管理系统(C语言)
- Windows修改键盘映射
- java时间数字转换成大写显示
- danfoss 变频器的profinet通讯调试_西门子G120变频器S7-300之间的PN通讯
- JavaWEB笔记 浏览器内核及分类
- 到2020年,将有60%的工作会被人工智能取代?
- Opencv源码之平面点集的最小包围圆
- 基于互联云及多云的云化基础设施算力调度
- 补鞋匠迈尔鲁夫的故事(二)
热门文章
- 渗透测试(Penetration Testing)
- 文档管理 linux,Linux 文档管理
- JDK5.0新特性系列---11.5.3线程 同步装置之CyclicBarrier
- angularJS之angular-datatable的方法
- centos中安装nginx
- 51nod 1196
- Java编程的逻辑 (56) - 文件概述
- 经典算法大全之河内之塔
- Source Insight下载及注册码
- SMI/慧荣/SM32**主控量产通用教程,PNY U盘量产!