截取字符串方法:
String newStr = str.subString(起始索引);//默认到结束
String newStr = str.subString(起始索引,结束索引-1);
1.提示用户输入手机号码
2.电话号码必须为132、134、135开头,必须为11位,判断手机号必须是纯数字
3.通过代码逻辑进行修改,要求中间四位使用*代替
示例:用户输入13279440986 控制台打印:132****0986
import java.util.Scanner;
public class Test19 {
public static void main(String[] args) {
System.out.println("请输入您的电话号码:");
tele();
}
//接收电话号码
public static String scanner() {
Scanner sc = new Scanner(System.in);
String tele = sc.next();
return tele;
}
// 判断电话号码是否符合要求
public static void tele() {
String tele = scanner();
wc:
while (true) {
char[] arr = tele.toCharArray();
if (arr.length != 11) {
System.out.println("您输入的电话号码有误,请重新输入");
tele = scanner();
continue;
}
for (int i = 0; i < arr.length; i++) {
//判断电话号码是否为纯数字
if (arr[i] < 48 || arr[i] > 57) {
System.out.println("您输入的电话号码有误1,请重新输入");
tele = scanner();
continue wc;
}
}
String str1 = tele.substring(0, 3);
//电话号码是否以132,134,135开头
if (str1.equals("132") || str1.equals("134") || str1.equals("135")) {
String str2 = tele.substring(3, 7);
//符合上述条件然后将字符串的中间部分截取出来替换掉
str2 = "****";
String str3 = tele.substring(7);
System.out.println(str1 + str2 + str3);
break;
} else {
System.out.println("请重新输入");
tele = scanner();
}
}
}
}