//手机号屏蔽
package test;
import java.util.Scanner;
public class test15 {
public static void main(String[] args) {
//获取手机号
System.out.println("输入电话号码:");
Scanner sc = new Scanner(System.in);
long phoneNumber = sc.nextLong();
while (true) {
//将整数型电话号码转换成字符串获取电话号码长度
String strNum = String.valueOf(phoneNumber);
if (strNum.length() == 11) {
break;
} else {
System.out.println("无效号码!请输入正确的号码:");
phoneNumber = sc.nextLong();
}
}
//截取号码前三位
String strNumber = String.valueOf(phoneNumber);
//strNumber.substring(0,3)获取字符串从0索引开始到2索引结束,包头不包尾包左不包右
String starNum = strNumber.substring(0, 3);
//strNumber.substring(7);获取字符串从该索引开始到结束
String endNum = strNumber.substring(7);
//对字符串进行拼接
String result = starNum + "****" + endNum;
System.out.println(result);
}
}
该Java程序,目的是输入一个电话号码并对其进行屏蔽。具体来说,程序会要求用户输入电话号码,并将其转换为字符串,然后检查字符串长度是否为11位。如果不是,则程序会提示用户输入正确的电话号码。如果是,程序将提取号码的前三位和后四位,然后将其余的四位数字替换为"****",最后将屏蔽后的号码打印出来。
其中,程序使用了Java中的Scanner类来读取用户输入,并使用了String类中的substring()方法来截取字符串的一部分。具体来说,strNumber.substring(0,3)获取字符串从0索引开始到2索引结束(包头不包尾),包括第0个和第1个字符,但不包括第2个字符。而strNumber.substring(7)则获取字符串从第7个索引开始到结束,包括第7个字符。最后,程序将三个字符串拼接成一个字符串,并将其打印出来。