代码是项目中截的,但是不涉及业务,所以懒得改里面涉及到的 set /get 属性代码了
邮箱的效果就是保留前三位和后三位,中间置换了*号
如果56位邮箱短位邮箱,因为字符串太短了 就是保留前2后2位
再短(四位以下)就只显示第1位,例如1234@163.com转换1***@163.com
//处理邮箱字符串
// 12345678@qq.com -->> 邮箱123****890@qq.com
String email = baseRet.getData().getEmail();
String emailHead = email.substring(0, email.indexOf("@"));
String emailLast = email.substring( email.indexOf("@"));
//拼接
StringBuilder stringBuilder = new StringBuilder("邮箱");
int length = emailHead.length();
if(length>6) {//大于6位的邮箱 可以拼接前三位后两位方式
stringBuilder.append(emailHead, 0, 3);//前三位
for (int i = 3; i < length - 2; i++) stringBuilder.append("*");//中间*号
stringBuilder.append(emailHead, length - 2, length);//后两位
}else if(length>4){//5 6位邮箱 拼接前2后2模式
stringBuilder.append(emailHead, 0, 2);//前两位
for (int i = 2; i < length - 1; i++) stringBuilder.append("*");//中间*号
stringBuilder.append(emailHead, length - 1, length);//后一位
}else{//不足四位邮箱 前一位
stringBuilder.append(emailHead, 0, 1);//前一位
for (int i = 1; i < length; i++) stringBuilder.append("*");//中间*号
}
stringBuilder.append(emailLast);//加后缀
user.setEmail(stringBuilder.toString());
手机号很简单了,可以忽略不计了都
//处理手机号 11122223333 -->>111******33
String phone = baseRet.getData().getMobile();
phone="手机"+phone.substring(0,3)+"******"+phone.substring(9);
user.setMobile(phone);