java 里怎么判断一个字符串是否纯数字
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 里怎么判断一个字符串是否纯数字相关的知识,希望对你有一定的参考价值。
public class AllNumber/**
* 使用Double.parseDouble方法判断字符串是不是为数字
*
* @param number
* 字符串
* @return
*/
public static boolean isNumber(String number)
if (null == number)
return false;
try
double num = Double.parseDouble(number);// 转换成功则是数字
catch (Exception e)
// TODO: handle exception
return false;
return true;
/**
* 使用正则表达式判断字符串是不是为数字
*
* @param number
* 字符串
* @return
*/
public static boolean isNumberByRegex(String number)
if (null == number)
return false;
String regex = "^[-]0,1[0-9]1,[.]0,1[0-9]1,$";
return number.matches(regex);
public static void main(String[] args)
System.out.println(isNumber("1234.90"));
System.out.println(isNumberByRegex("-0123.9"));
参考技术A 一个字符一个字符的判断
str.charAt(i) 取出来判断(0-9)本回答被提问者和网友采纳
Java中怎样判断一个字符串是不是是数字
用java的异常机制,不仅可以判断是否是数字,还可以判断整数或者小数:public void checkInt(String bh)
try
int num = Integer.parseInt(bh);//将输入的内容转换成int
System.out.println("是整数:"+num);//是整数
catch (NumberFormatException e) //转换成int类型时失败
try
double d =Double.parseDouble(bh);//转成double类型
System.out.println("是小数:"+d);//是小数
catch (NumberFormatException e2) //转成double类型失败
System.out.println("不是数字");
参考技术A
使用Character.isDigit(char)判断,类型转换判断,正则表达式判断都是可以的,下面以正则判断为例。
代码如下:
Numeric(String str)Pattern pattern = Pattern.compile("[0-9]*");////+表示1个或多个(如"3"或"225"),*表示0个或多个([0-9]*)(如""或"1"或"22"),?表示0个或1个([0-9]?)(如""或"7")
Matcher isNum = pattern.matcher(str);
if( !isNum.matches() )//这里作判断
return false;
return true;//只有匹配了才会执行这里
参考技术B 最简单的是使用Java系统库函数:
public static boolean isNumeric(String str)
for (int i = str.length();--i>=0;)
if (!Character.isDigit(str.charAt(i)))
return false;
return true;
参考技术C String str = "123121233";
System.out.println(str.matches("\\\\d+"));//true表示是数字,false表示不是 参考技术D Object instance of Number
以上是关于java 里怎么判断一个字符串是否纯数字的主要内容,如果未能解决你的问题,请参考以下文章