java常用工具类封装
java常用工具类封装
import org.apache.commons.lang.StringUtils;import java.math.BigDecimal;public class CommonUtil {public static String safeToString(Object value, String defaultValue) {if (value != null) {return StringUtils.trim(String.valueOf(value));}return defaultValue;}public static Integer safeToInteger (Object obj, Integer defaultValue) {if (obj != null) {return Integer.parseInt(String.valueOf(obj));}return defaultValue;}/*** 方法注释: 银行卡号脱敏* @return*/public static String getHideCardNo(String cardNo){if (StringUtils.isNotBlank(cardNo)) {StringBuffer cardBuffer = new StringBuffer();char[] card = cardNo.toCharArray();if (card.length > 8 && card.length <= 12) {card[card.length - 5] = '*';card[card.length - 6] = '*';card[card.length - 7] = '*';card[card.length - 8] = '*';}if (card.length > 12) {for (int i = 5; i <= 12; i++) {card[card.length - i] = '*';}}int head = card.length%4 + 4;for (int i = 0; i < head; i++) {cardBuffer.append(card[i]);}cardBuffer.append("");for (int i = 0; (i + head)< card.length; i++) {cardBuffer.append(card[i + head]);if ((i+1)%4 == 0) {cardBuffer.append("");}}return cardBuffer.toString().trim();}return cardNo;}/*** 名字脱敏* 规则,张三丰,脱敏为:**丰*/public static String nameDesensitization(String name){if(name==null || name.isEmpty()){return "";}String myName = null;char[] chars = name.toCharArray();if(chars.length==1){myName=name;}if(chars.length==2){myName=name.replace(name.substring(0,1), "*");}if(chars.length>2){myName=name.replaceAll(name.substring(0, chars.length-1), "*");}return myName;}/*** 对手机号进行脱敏* @param phone* @return*/public static String getHidePhone (String phone) {if (StringUtils.isNotBlank(phone)) {phone = phone.replaceAll("(^\\d{3})\\d.*(\\d{4})", "$1****$2");}return phone;}/*** 对身份证号进行脱敏* @param idNumber* @return*/public static String desensitizedIdNumber(String idNumber){if (StringUtils.isNotBlank(idNumber)) {if (idNumber.length() == 15){idNumber = idNumber.replaceAll("(\\w{3})\\w*(\\w{4})", "$1********$2");}if (idNumber.length() == 18){idNumber = idNumber.replaceAll("(\\w{3})\\w*(\\w{4})", "$1***********$2");}}return idNumber;}/*** 元转为无小数点的分** @param price* @return*/public static BigDecimal yuan2Fen(BigDecimal price) {return new BigDecimal(price.multiply(new BigDecimal("100")).longValue());}public static void main(String[] args) {String idNumber = desensitizedIdNumber("421202199805060221");System.out.println(idNumber);}
}
java常用工具类封装相关推荐
- java常用工具类和Hutool常用的工具类整理
java常用工具类和Hutool常用的工具类整理 1.java常用工具类 1.1 Scanner类 /*** Scanner 类*/@Testpublic void testScanner() {Sc ...
- Java常用工具类StringUtils的常用方法
Java常用工具类StringUtils的常用方法 1.该工具类是用于操作Java.lang.String类的. 2.StringUtils类在操作字符串是安全的,不会报空指针异常,也正因此,在操作字 ...
- 【JavaScript学习】JavaScript 常用工具类封装
文章目录 1.JavaScript 常用工具类封装 (1)获得浏览器地址所有参数 (2)将json转为get参数 (3)格式校验工具类 (4)数组操作工具类 (5)表单取值工具类 (6)时间转换工具类 ...
- Java常用工具类JsonUtils
Java常用工具类JsonUtils 一.项目添加pom文件 <dependency><groupId>com.google.code.gson</groupId> ...
- JAVA常用工具类(实用高效)
JAVA常用工具类(根据GITHUB代码统计) 从Google你能搜索到大量的关于Struts,Spring,Hibernate,iBatis等比较大的框架的资料,但是很少有人去关注一些小的工具包,但 ...
- Hutool Java常用工具类汇总
简介 Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以"甜甜的". Hu ...
- Java 常用工具类整理
目录 第一部分:常用的16个工具类 第二部分:java开发常用工具类(正则校验) 第一部分:常用的16个工具类 一.org.apache.commons.io.IOUtils 1.closeQuiet ...
- Java常用工具类之异常、包装类、字符串处理类、集合框架实现类、输入输出流、多线程
集合.多线程和I/O流等 介绍6种常用工具类: 1.如何应用异常处理程序中的问题?2.如何通过包装器类实现基本数据类型的对象化处理?3.字符串处理类String.StringBuilder是如何进行字 ...
- Java 常用工具类 Collections 源码分析
文章出处 文章出自:安卓进阶学习指南 作者:shixinzhang 完稿日期:2017.10.25 Collections 和 Arrays 是 JDK 为我们提供的常用工具类,方便我们操作集合和数组 ...
- Java常用工具类整合
JSON转换工具 package com.taotao.utils;import java.util.List;import com.fasterxml.jackson.core.JsonProces ...
最新文章
- 开发时,尤其是最初的版本,只要保持有80%的功能即可
- Java黑皮书课后题第4章:4.16(随机字符)编写一个程序,使用Math.random()方法显示一个随机的大写字母
- 音视频技术开发周刊 | 170
- 嵌入式android pdf,Embedded Android 英文原版PDF
- mac搭建PHP开发环境
- [Erlang 0004] Centos 源代码编译 安装 Erlang
- mysql跨服务器查询插入_Oracle跨服务器查询插入数据
- 【转】谈谈Unicode编码,简要解释UCS、UTF、BMP、BOM等名词
- oschina mysql limit_如何提高MySQL Limit查询的性能
- 样本分布不平衡,机器学习准确率高又有什么用?
- API 安全成企业考虑的第一要务
- 在TextView中插入图片
- cnode系列之登陆注册功能
- 【PROTEUS】使用PROTEUS与电脑串口调试助手进行通讯
- miner更换owner钱包地址
- cdh6 添加新主机后,出现 Error sending messages to firehose
- 计算机比赛小组名称和口号,竞赛小组队名和口号
- linux gnu升级,GNU/Linux 让Ubuntu 系统版本升级
- Android 与 H5 数据的传递
- android密码是小黑点,Android自定义密码样式 黑点转换成特殊字符
热门文章
- python批量查询ip归属地_IP地址地理信息批量查询小工具
- mac 开启android 模拟器,折腾mac的经验积累 2:mac上如何玩安卓模拟器
- 【Luat-esp32】2.点屏-st7735
- VB.net小技巧——ClickOnce应用程序版本号自动递增
- 计算机三级嵌入式系统
- Delphi 2007安装问题
- 分享 MSDN 下载工具(Word/PDF)
- dhl:搜狗五笔输入法
- 最简单的又炫的快捷菜单....喜欢的拿起就跑
- 学习操作系统心得体会