package 字符串练习;
public class 手机号屏蔽 {
public static void main(String[] args) {
/* 需求: 已经有一个给定的手机号,要把里面第3位到第7位数字改成*
*/
//思路: 我想到的有两种方法可解
//第一种: 把原字符串先转换成char数组,然后用for循环和if来重新拼接一个字符串
//第二种: 可以把1到3位的数字和7到最后的数字截取出来,
// 把这两个先拼接,然后得到一个临时长度,在计算我们需要屏蔽多少位的号码
// 最后用一个for循环和if语句就可以构造成目标字符串了
//显然第二个会更好一点,因为这样就可以让长度变成动态的,适用范围更广
//接下来我写第二种方法
String phone_number = "123456789";
//手机号码定义完毕
String number_1_3 = phone_number.substring(0,3);
String number_7_end = phone_number.substring(7);
//1到3和7到最后都截取完毕
String begin_end = number_1_3 + number_7_end;
//头尾结合完毕
int length = phone_number.length() - begin_end.length();
//屏蔽号码位数完毕
String result = "";
for (int i = 0; i < length; i++) {
result += "*";
}
result = number_1_3 + result + number_7_end;
System.out.println(result);
}
}