编写一段java代码使用Luhn算法校验手机号是否合法
时间: 2024-02-21 14:33:39 浏览: 69
下面是使用Luhn算法校验手机号是否合法的Java代码:
```
public boolean isPhoneNumberValid(String phoneNumber) {
String digitsOnly = phoneNumber.replaceAll("[^0-9]", ""); // 去掉手机号中的非数字字符
int sum = 0;
boolean isOdd = true;
for (int i = digitsOnly.length() - 1; i >= 0; i--) {
int digit = Integer.parseInt(digitsOnly.substring(i, i + 1));
if (isOdd) {
sum += digit;
} else {
sum += digit < 5 ? digit * 2 : digit * 2 - 9;
}
isOdd = !isOdd;
}
return sum % 10 == 0;
}
```
该方法会返回一个布尔值,指示给定的手机号是否合法。如果返回值为 true,表示手机号是合法的。如果返回值为 false,则该手机号无效。
阅读全文