姓名脱敏

简介: 该Java方法用于隐藏姓名中的部分字符:单字不隐藏,双字隐藏第二字,三字及以上隐藏中间字,仅保留首尾字,用“*”代替被隐藏的字符。

public static String hideName(String realname) {

   if (realname == null) {

       return null;

   }

   char[] r = realname.toCharArray();

   String name = "";

   if (r.length == 1) {

       name = realname;

   }

   if (r.length == 2) {

       name = realname.replaceFirst(realname.substring(1), "*");

   }

   if (r.length > 2) {

       name = realname.replaceFirst(realname.substring(1, r.length - 1), "*");

   }

   return name;

}

相关文章
|
1天前
|
人工智能 自然语言处理 Java
Java Client
本教程介绍如何使用Elasticsearch 7.17.x的新版Java Client配置客户端、创建索引、映射分析及增删改查文档。通过商城搜索场景,演示索引映射设计、Java模型类构建、批量导入数据等操作,并解决LocalDateTime序列化等问题,提升开发效率。
|
1天前
|
存储 算法 BI
xxljob本地运行
本文介绍XXL-JOB分布式任务调度框架的部署与使用,涵盖源码获取、服务端数据库初始化、配置修改、服务启动及客户端注册全流程,并演示如何在控制台配置定时任务与调度策略,实现任务的高效管理与执行。
xxljob本地运行
获取明天开始/结束时间
该方法用于获取明天的起始和结束时间。通过Calendar实例获取当天起始或结束时间,再将天数加1,得到明天对应的时间点,返回Date类型结果。
获取本周的开始/结束时间
该方法用于获取当前周的起始和结束时间。首先通过Calendar获取本周第一天(周一)的开始时刻,再计算出本周最后一天(周日)的结束时刻,返回对应日期的起止时间对象。
获取上周开始/结束时间
该方法用于获取上周的起始和结束时间。通过Calendar类计算上周一的开始时刻,并以上周一为基础加6天得到上周日的结束时刻,结合`getDayStartTime`和`getDayEndTime`返回完整的一周时间范围。
|
1天前
|
存储 JSON 数据格式
文档操作
本文介绍了Elasticsearch中文档的增、删、改、查及批处理操作。文档以JSON格式存储,支持通过REST API进行全量或局部更新、条件查询、按ID删除,并可使用_bulk实现批量操作,提升数据处理效率。
|
1天前
|
Java
获取本月是哪一月
该方法用于获取当前月份。通过Date获取当前时间,结合GregorianCalendar解析,调用get(2)取得从0开始的月份值,加1后返回实际月份(1-12),适用于Java中的日期处理场景。
获取本月的开始/结束时间
该方法用于获取当前月的第一天开始时刻和最后一天结束时刻。通过Calendar类设置年月,分别取月初第一天的起始时间与月末最后一天的截止时间,结合辅助方法getDayStartTime和getDayEndTime进行时间截断处理,精确到毫秒,适用于统计或查询当月时间范围内的数据场景。
获取上月的开始/结束时间
该方法用于获取上个月的第一天和最后一天的起始与结束时间。通过Calendar类设置日期为当前月份减两个月并置日为1,结合最大天数获取月末,再调用工具方法返回每日的开始和结束时刻。
获取本年的开始/结束时间
该方法用于获取当前年份的起始和结束时间。通过Calendar设置年份、月份和日期,分别获取年初(1月1日)和年末(12月31日)的开始与结束时刻,并结合时间处理函数返回对应Date对象。