目录

  • 简介
    • 方法一
    • 方法二

简介

在完成一个java作业时,我遇到了日期的的判断,我需要判断一段字符串是不是整数。
我第一个想到的是,Scanner类的方法hasNextInt(),那么
String类应该也有这种方法吧。于是我上网查询。

方法一

使用Integer.parseInt(value)的方法,如果不是整数会抛出异常,因此可以解决这个问题。但是我目前只学习了java基础,异常还没有学到,因此我继续查

方法二

这时我看到了正则表达式,在String的split中我第一次了解到了什么是正则表达式。当时我很疑惑,因为不知道是干嘛的,直到刚才,我看到了用正则表达式判断整数的方法,我很兴奋
用法是:

String.matches("\\d+");

如果是整数,返回true;不是返回false
这段代码我是没见过的,所以只能先初步分析一下

  • matches是一个方法,猜测作用是判断字符串对象是否满足括号中的正则表达式规则
  • 第一个"\"我知道是转义字符
  • 第二个"\d"应该是一起的,在c中我学过d代表整数,这里应该也差不多吧
  • "+"我不知道是什么意思

经过查证:

  • 猜测正确:matches() 方法用于检测字符串是否匹配给定的正则表达式。
  • 猜测正确:第一个"\"是转义字符
  • 猜测正确:第二个"\d"代表整数,范围是[0,9]的整数
  • 因为上面的"\d"判断的是个位数的整数,而我需要判断好几位的数,所以后面要有“+”,代表这是个多位的整数

更多推荐

Java中的正则表达式判断整数