java判断数字类型(小数和整数)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java判断数字类型(小数和整数)相关的知识,希望对你有一定的参考价值。

参考技术A

java判断数字类型是否为小数,可以采用正则表达式的方式来判断,以下是使用正则表达式来判断数字类型是否为小数的代码:

public static boolean isNumber(String str)

boolean isInt = Pattern.compile("^-?[1-9]\\\\d*$").matcher(str).find();

boolean isDouble = Pattern.compile("^-?([1-9]\\\\d*\\\\.\\\\d*|0\\\\.\\\\d*[1-9]\\\\d*|0?\\\\.0+|0)$").matcher(str).find();

return isInt || isDouble;

 扩展资料

java判断数字类型,正则表达式用法:

1、$:匹配输入行尾。如果设置了RegExp对象的Multiline属性,$也匹配“\\n”或“\\r”之前的位置。

2、*:匹配前面的子表达式任意次。例如,zo*能匹配“z”,也能匹配“zo”以及“zoo”。*等价于0,。

3、+:匹配前面的子表达式一次或多次(大于等于1次)。例如,“zo+”能匹配“zo”以及“zoo”,但不能匹配“z”。+等价于1,。

4、?:匹配前面的子表达式零次或一次。例如,“do(es)?”可以匹配“do”或“does”。?等价于0,1。

5、n,:n是一个非负整数。至少匹配n次。例如,“o2,”不能匹配“Bob”中的“o”,但能匹配“foooood”中的所有o。“o1,”等价于“o+”。“o0,”则等价于“o*”。

参考资料:百度百科—正则表达式

java 判断整数还是小数

假设两种数据
1.00 和 1.23

请给出代码判断
如果整数部分外小数全部为零,
如果整数部分外小数不为零。

先判断整数:string.matches("\\d+")||string.matches("\\d+\\.0+")
再小数string.matches("\\d+\\.\\d+")
如果要对string的1.00转int,还要用split分一下
参考技术A 直接对点进行分割(split),然后判断点后的内容大于0?等于0?还是为空呗。 参考技术B public class Test 
public static void main(String[] args) 
Scanner scanner=new Scanner(System.in);
double num=0.00;
try 
System.out.println("请输入数字");
num=scanner.nextDouble();
 catch (Exception e) 
System.out.println("请输入正确的数字格式");
scanner.close();
return;

String numString=num+"";
int a=numString.indexOf(".");
String numAfter=numString.substring(a+1, numString.length());
char[] nums=numAfter.toCharArray();
for (int i = 0; i < nums.length; i++) 
if (nums[i]!='0') 
System.out.println(num+"不是整数");
scanner.close();
return;


System.out.println(num+"是整数");
scanner.close();

本回答被提问者采纳
参考技术C 亲,1.00不是整数哦。1.23和1.00都是浮点型数据哈。1或者100才是整数追问

意义上不是整数,但是我就是要判断小数里面是否全部为零

追答

你是问判断的算法么?还是概念?

追问

就是说 这两种小数,在JAVA中的判断
如果小数除整数部分外全部为零
或者小数除整数部分不为零。
判断的方式。

以上是关于java判断数字类型(小数和整数)的主要内容,如果未能解决你的问题,请参考以下文章

Java中怎样判断一个字符串是不是是数字

在java里怎么判断输入的东西是否数字和正整数?(请把详细的代码给我谢谢)

Java 判断整数,整数范围为0-120 之间 和 30-180 的两个正则表达式如何写?不允许小数,字母等非法内容。

验证字符串是否为数字(字符串能否转为整数或小数)

java如何判断数字的位数?

前段基础 判断数字是整数 还是小数