package utils; import java.util.Random;
import java.util.regex.Pattern; /**
* Created with IntelliJ IDEA.
* Description:
* 手机号正则: ^1[34578][0-9]{9}
* 生成手机号工具类
*
* @author
* Date: 2017-11-09
* Time: 10:24
*/
public class PhoneNoGeneratorUtil { private static String firstNum = "1";
private static String[] secondNumArray = {"3", "4", "5", "7", "8"}; /**
* 调用一次生成一个手机号,手机号后9位数字通过循环生成
*/
public String getPhoneNo() { StringBuffer sb = new StringBuffer();
Random random = new Random();
String secondNum = secondNumArray[random.nextInt(secondNumArray.length)];
sb.append(firstNum);
sb.append(secondNum);
for (int i = 0; i < 9; i++) {
Integer thirdNum = random.nextInt(10);
sb.append(thirdNum.toString());
}
return sb.toString();
} /**
* 当需要生成较大量的手机号时调用该方法
* 后9位数字随机生成,长度不足时则补0
*/
public String getMultiPhoneNo() { StringBuffer sb = new StringBuffer();
Random random = new Random();
String secondNum = secondNumArray[random.nextInt(secondNumArray.length)];
sb.append(firstNum);
sb.append(secondNum);
Integer thirdNum = 1 + random.nextInt(999999999);
if (thirdNum.toString().length() <= 9) {
sb.append(thirdNum);
for (int i = 1; i <= 9 - thirdNum.toString().length(); i++) {
sb.append(0);
}
} else {
sb.append(thirdNum.toString());
}
return sb.toString(); } /**
* 手机号校验
*/
public boolean checkPhoneNo(String phoneNum) { // 定义手机号的规则
String phoneNumPattern = "^1[34578][0-9]{9}";
// 比对phoneNum是否符合定义的规则
boolean result = Pattern.matches(phoneNumPattern, phoneNum);
return result; } }

JAVA工具类--手机号生成与正则校验的更多相关文章

  1. 【java工具类】生成Zip压缩包

    多文件生成压缩包,返回压缩包生成位置的路径. FileUtil.java /** * 文件打压缩包 * @param files * @param Name * @return * @throws E ...

  2. 【java工具类】生成二维码

    /** * 生成二维码图片 * @param text 扫描二维码后跳转的url * @param width 图片宽度 * @param height 图片高度 * @param filePath ...

  3. JAVA之旅(五)——this,static,关键字,main函数,封装工具类,生成javadoc说明书,静态代码块

    JAVA之旅(五)--this,static,关键字,main函数,封装工具类,生成javadoc说明书,静态代码块 周末收获颇多,继续学习 一.this关键字 用于区分局部变量和成员变量同名的情况 ...

  4. Java工具类——通过配置XML验证Map

    Java工具类--通过配置XML验证Map 背景 在JavaWeb项目中,接收前端过来的参数时通常是使用我们的实体类进行接收的.但是呢,我们不能去决定已经搭建好的框架是怎么样的,在我接触的框架中有一种 ...

  5. Java工具类-验证码工具

    1.工具类,生成随机验证码字符串 import java.util.Arrays; /** * 工具类,生成随机验证码字符串 * * @version 1.0 * @author * */ publi ...

  6. Java工具类——数学相关的类

    Java工具类--数学相关的类 在上一篇文章中,我们系统学习了 Java 里面的包装类,那么这篇文章,我们就来学习一下Java提供好的类--数学相关的类. 一.数学类介绍 在最早期学习 Java 基础 ...

  7. java工具类系列 (四.SerializationUtils)

    java工具类系列 (四.SerializationUtils) SerializationUtils该类为序列化工具类,也是lang包下的工具,主要用于序列化操作 import java.io.Se ...

  8. 排名前 16 的 Java 工具类

    在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码. 一. ...

  9. 排名前16的Java工具类

    原文:https://www.jianshu.com/p/9e937d178203 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法 ...

随机推荐

  1. 去掉xcode中警告的一些经验

    1.编译时,编译警告忽略掉某些文件 只需在在文件的Compiler Flags 中加入 -w 参数,例如: 2.编译时,编译警告忽略掉某段代码 #pragma clang diagnostic pus ...

  2. java 中异常类

    算术异常类:ArithmeticExecption 空指针异常类:NullPointerException 类型强制转换异常:ClassCastException 数组负下标异常:NegativeAr ...

  3. legend3---1、meedu安装

    legend3---1.meedu安装 一.总结 一句话总结: 视频的安装教程做主菜,辅以文档安装教程做配料,口感甚佳. 1.为什么不直接从github下载文件的发行版,而要选择composer方式安 ...

  4. Latex数学公式中的矩阵

    目录 矩阵的括号形式 array环境 上三角矩阵 分块矩阵 行内矩阵 矩阵的括号形式 使用matrix.pmatrix.bmatrix.Bmatrix.vmatrix或者Vmatrix环境: $$ \ ...

  5. python学习之路---day16--面向对象

    面向对象及成员的基本总结复习一:先用一个实际例子说明类: class 类名: class Car: #__init__ :使我们在具体构造一个对象时,使这个对象有具体的属性,像有名字啊,价格等等这样的 ...

  6. PHP 数组下标自动转换为整型的坑

    在做项目时,上线后遇到一个 BUG,有一个数组存储了下标从 '01'到'18' 总共18组数据.上线前测试了前几组数据,没问题.上线后,在用户选择'15'时报错,找不到这个数据.查了一下代码,数据是没 ...

  7. Grafana+Prometheus系统监控之Redis

    REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统. Redis是一个开源的使用ANSI C语言编写.遵守B ...

  8. input复制文本

    input.value = this.$t('title') document.body.appendChild(input) input.select() input.setSelectionRan ...

  9. ArrayBlockingQueue使用

    阻塞与非阻塞: 阻塞: 阻塞调用是没有获得资源则挂起进程,被挂起的进程进入休眠状态,调用的函数只有在得到结果之后才返回,进程继续. 对象是否处于阻塞模式和函数是不是阻塞调用有很强的相关性,但并不是一一 ...

  10. 《剑指offer》面试题4 替换空格 Java版

    (给一个足够长的字符数组,其中有一段字符,将' '(空格)替换成'%' '2' '0'三个字符,原字符段由'\0'结尾) 书中方法:这道题如果从头到尾扫描数组并替换,会涉及到数组的移动.如果不移动元素 ...