我正在尝试检查 3 个条件以验证车牌号。但我似乎无法检查所有 3 个条件。长度必须在 4 -7 之间。前 3 个字符必须来自 a - z。第四个字符以后必须是数字 '0' - '9'。
我的问题的下一部分有问题。我需要实现计算 CheckDigit 方法,我试图将它添加到一个数组中以接受我的论证,以便我执行逐步指令来计算校验位。
下面是步骤,
取第二个和第三个字符并转换为与字母对应的数字。例如。A 是 1 B 是 2。
数字前面加 0 表示数字少 4 位。例如。SBA123 需要追加到 0123
将步骤 1 和 2 中的每个数字乘以 14、2、12、2、11、1
总结步骤 3 中的数字
将步骤 4 中的 sum 除以 19 并取余数并在表中找到校验位。
任何帮助对我来说都是很好的开始。下面是我的代码我有改变,
请指出我的错误。
public static void validateCarPlate(String y)throws InvalidCarPlateException{
String rex = "[a-zA-Z]{3}[0-9]{1,4}";
if(y.matches(rex)){
computeCheckDigit(y);
}else{
throw new InvalidCarPlateException();
}
}
public static void computeCheckDigit(String x){
int [] arr = Integer.parseInt(x);
}