某城市电话号码由三部分组成。它们的名称和内容分别是: (1)地区码:空白或三位数字; (2)前 缀:非'0'或'1'的三位数字; (3)后 缀:4位数字。 假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。请用Java编写程序实现上述功能
时间: 2023-12-24 18:20:47 浏览: 108
我可以为您提供一个Java代码示例,如下所示:
import java.util.Scanner;
public class PhoneNumberChecker {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String phoneNumber;
boolean valid;
do {
System.out.print("请输入电话号码:");
phoneNumber = input.nextLine();
valid = checkPhoneNumber(phoneNumber);
if (!valid) {
System.out.println("电话号码不符合规定,请重新输入。");
}
} while (!valid);
System.out.println("电话号码符合规定。");
}
public static boolean checkPhoneNumber(String phoneNumber) {
// 判断电话号码是否符合规定
if (phoneNumber.length() != 10) {
return false;
}
if (!phoneNumber.substring(0, 3).matches("[0-9 ]{3}")) {
return false;
}
if (!phoneNumber.substring(3, 6).matches("[2-9]{3}")) {
return false;
}
if (!phoneNumber.substring(6, 10).matches("[0-9]{4}")) {
return false;
}
return true;
}
}
这个程序中的 checkPhoneNumber() 方法用于判断电话号码是否符合规定,如果符合规定就返回 true,否则返回 false。在这个方法中,我们使用了正则表达式来匹配电话号码中每个部分的格式。在 main() 方法中,我们通过循环来不断接受用户输入的电话号码,直到用户输入的电话号码符合规定。
阅读全文