java 判断字符是否是数字,java中如何判断一个字符是否是数字字符
写爬虫互联网协议(互联网协议)被封了怎么解决?立即使用
爪哇岛中判断字符串是否是数字的方法如下:
1、用Java自带的方法
爪哇中有一个Character.isDig(char ch)
公共类CheckStrIsNum {
公共静态void main(String[] args) {
双aa=-192322.1212;
字符串a=-192322.1212 ;
字符串b=-192322 a 1212 ;
字符串c= Java
字符串d=" 5
/** 判断是否全为数字*/
系统。出去。println(checkstrisnum 01(double。tostring(aa)));
系统。出去。println(checkstrisnum 01(a));
系统。出去。println(checkstrisnum 01(b));
系统。出去。println(checkstrisnum 01(c));
系统。出去。println(checkstrisnum 01(d));
}
/**
* 利用爪哇的character.isDigit方法进行处理
*/
public static boolean checkstrisnum 01(String str){
for(int I=0;我海峡。长度();i ) {
系统。出去。println(字符串。charat(I));
如果(!性格。是数字(字符串。charat(I))){
返回错误的
}
}
返回真实的
}
}显然b应该返回错误的才对,但是却返回没错,而5应该返回没错,也是结果错误。由此可见,这个结果,并不完美。
2、利用正则表达式来判断
利用正则表达式来-?[0-9] (\\.[0-9] )?来做判断字符串是否为数字。
如果传入的数据有很多位,那么使用两倍会导致精度丢失,这个时候就要用BigDecimal来进行转换。
公共类CheckStrIsNum {
公共静态void main(String[] args) {
双aa=-192322.1212;
字符串a=-192322.1212 ;
字符串b=-192322 a 1212 ;
字符串c= Java
字符串d=" 5
/** 判断是否全为数字*/
系统。出去。println(checkstrisnum 02(double。tostring(aa)));
系统。出去。println(checkstrisnum 02(a));
系统。出去。println(checkstrisnum 02(b));
系统。出去。println(checkstrisnum 02(c));
系统。出去。println(checkstrisnum 02(d));
}
私有静态模式NUMBER _ Pattern=模式。编译(-?[0-9] (\\.[0-9] )?);
/**
* 利用正则表达式来判断字符串是否为数字
*/
public static boolean checkstrisnum 02(String str){
字符串bigStr
尝试{
/** 先将潜艇用热中子反应堆(海底热反应堆的缩写)转成BigDecimal然后在转成String */
bigStr=new BigDecimal(str).toString();
} catch(异常e) {
/** 如果转换数字失败,说明该潜艇用热中子反应堆(海底热反应堆的缩写)并非全部为数字*/
返回错误的
}
匹配器是num=NUMBER _ pattern。matcher(str);
如果(!isNum.matches()) {
返回错误的
}
返回真实的
}
}更多爪哇岛知识请关注爪哇岛基础教程。以上就是爪哇岛中判断字符串是否是数字的详细内容,更多请关注我们其它相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。