java判断字符串是否为小数点_java 判断字符串是否是整数(纯数字:正整数、负整数、0)、至少包含一位小数、数字(可以是整数或小数)...

1.情景展示

一共有三种需求:

第一种:判断字符串是否是数字字符串(可以是正整数、0、负整数或者小数);

第二种:判断字符串是否是纯数字,也就说我们数学上的整数(可以是正整数、0、负整数,不包含小数位);

第三种:判断字符串是否是小数,小数点左边必须是整数(只有一个小数点,小数点左边是整数,右边至少包含一位数[0-9])。

2.准备工作

/*

* 校验是否为空(null && "")

* @date: 2020年08月26日 0026 10:21

* @param: s 待校验字符串

* @return: boolean 校验结果

*/

public static boolean isEmpty(String s) {

if (s == null || "".equals(s)) {

return true;

}

return false;

}

3.解决方案

判断字符串是否是数字字符串

/*

* 数字校验

* @attention: 可以是整数,也可以是小数

* @date: 2020年11月12日 0012 10:45

* @param: number 整数、小数

* @return: boolean true-可能是整数,也可能是小数,false-既不是整数也不是小数

*/

public static boolean isNumber(String number) {

// 非空校验

if (StringUtils.isEmpty(number)) return false;

// 数字校验(可以包含小数,可以是1,0,-1,1.1,-1.1,不能是+1.1,+1)

Pattern pattern = Pattern.compile("^-?\\d+(\\.\\d+)?$");

// 这个支持+1.1,+1

// Pattern pattern = Pattern.compile("[+-]?[0-9]+(\\\\.[0-9]+)?");

if (!pattern.matcher(number).matches()) return false;

return true;

}

判断字符串是否是纯数字(整数)

/*

* 整数校验

* @attention: 不包含小数位

* @date: 2020年11月12日 0012 10:45

* @param: number

* @return: boolean

*/

public static boolean isWholeNumber(String wholeNumber) {

// 非空校验

if (StringUtils.isEmpty(wholeNumber)) return false;

// 整数校验(可以是+1,1,0,-1)

Pattern pattern = Pattern.compile("[+-]?[0-9]+?");

if (!pattern.matcher(wholeNumber).matches()) return false;

return true;

}

判断字符串是否是小数

/*

* 小数校验(至少包含一位小数)

* @attention: 不是小数,但也不能证明是整数(比如:1..2和1.2.1)

* @date: 2020年11月12日 0012 10:51

* @param: decimal 小数

* @return: boolean true-至少包含一位小数,false-肯定不是小数,可能不是整数

*/

public static boolean isDecimal(String decimal) {

// 非空校验

if (StringUtils.isEmpty(decimal)) return false;

// 小数校验(可以是+1.2,1.2,-1.2)

Pattern pattern = Pattern.compile("[+-]?[0-9]+\\.([0-9]+)?");

if (!pattern.matcher(decimal).matches()) return false;

return true;

}

写在最后

哪位大佬如若发现文章存在纰漏之处或需要补充更多内容,欢迎留言!!!

相关推荐:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值