java后台如何校验1开头的11位数字
1、打开eclipse创建一个测试环境,如图:


2、创建新的包,如图:

3、创建工具类:CheckUtils,如图:

4、编写检验代码,将数字转为字符串,判断位数为11,再判断首数字是否为1,如图:
/**
* 转换为字符串再判断
* @param num
* @return
*/
public static boolean checkNumber(long num){
String numStr = String.valueOf(num);
if(numStr.length() != 11){
return false;
}
if(!numStr.startsWith("1")){
return false;
}
return true;
}

5、通过正则判断,编写另一个方法,如图:
/**
* 通过正则判断
* @param num
* @return
*/
public static boolean checkNumberWithRegex(long num){
String numStr = String.valueOf(num);
String pattern = "^1[\\d]{10}";
boolean isMatch = Pattern.matches(pattern, numStr);
return isMatch;
}

6、新建Test测试类,创建main方法,并写一个测试示例,如图:
public static void main(String[] args) {
long number = 12345678901L;
System.out.println(CheckUtils.checkNumber(number));
System.out.println(CheckUtils.checkNumberWithRegex(number));
number = 22345678901L;
System.out.println(CheckUtils.checkNumber(number));
System.out.println(CheckUtils.checkNumberWithRegex(number));
}

7、运行main方法,查看输出结果,如图所示:
